Modality creates focus by entering a distraction-free context that prevents people from doing other things until they complete a task or dismiss a message or view. Alerts and sheets are examples of modal views that must be dismissed before the user can proceed with a task. In some modal contexts, features and interactions unrelated to the current task may be temporarily disabled. For example, the Sketch mode in Preview prevents certain user actions—like selecting or adding text—until the user exits the mode.
Minimize the use of modality. Generally, people prefer to interact with apps in nonlinear ways. Consider creating a modal context only when it’s critical to get someone’s attention, when a task must be completed or abandoned to continue using the app, when a task calls for modality (such as using a drawing or selection tool in a graphics app), or to save important data.
Choose the least restrictive mode that makes sense. If a task must be completed before doing something in a document window, consider using a sheet. Sheets disable interaction in the document itself while the user continues using other parts of your app. For related guidance, see Sheets.
Provide an obvious and safe way to exit a modal context. People shouldn’t feel trapped in a modal context. For example, modal popovers can close automatically when the user clicks another area onscreen. Generally, it’s best to save the user’s work in case they exit the mode without meaning to. Users should always know the outcome of an action when leaving a modal context.
Keep modal tasks simple, short, and narrowly focused. People shouldn’t perceive your app as a series of disjointed tasks or transitions that result in a confusing workflow. If a modal task is too complex, the user could lose sight of what they were doing when they entered the modal context. As much as possible, reserve modes for small, self-contained tasks.