前一篇:iOS 8人机交互指南(5)
6. 模态对话框(Modal Contexts)
Modality—that is, a mode in which something exists or is experienced—has advantages and disadvantages. It can give users a way to complete a task or get information without distractions, but it does so by temporarily preventing them from interacting with the rest of the app.
模态是一种事物存在的方式,它既有优点也有缺点。它为用户提供一种不受打扰地完成任务或获取信息的方式,但同时它也临时性地阻断了用户与 app 其他部分的交互。
Ideally, people can interact with iOS apps in nonlinear ways, so it’s best when you can minimize the number of modal experiences in your app. In general, consider creating a modal context only when:
(1)It’s critical to get the user’s attention
(2)A self-contained task must be completed—or explicitly abandoned—to avoid leaving the user’s data in an ambiguous state
理想情况下,人们可以用非线性的方式与 iOS app 交互,所以最好尽可能减少 app 中的模态交互体验。通常,只在如下情况下才使用模态对话框:
(1)一定要引起用户注意的时候
(2)一个独立的任务必须被完成或者明确放弃的时候,这是为了避免让用户数据处于模棱两可的状态
Keep modal tasks simple, short, and narrowly focused. You don’t want your users to experience a modal view as a mini app within your app. If a subtask is too complex, people can lose sight of the main task they suspended when they entered the modal context. Be especially wary of creating a modal task that involves a hierarchy of views, because people can get lost and forget how to retrace their steps. If a modal task must contain subtasks in separate views, be sure to give users a single, clear path through the hierarchy, and avoid circularities. For guidelines on using modal views, see Modal View.
确保模态任务简单、简短、非常聚焦。不要让用户像使用 app 中的迷你 app 似的使用模态视图。如果一个子任务过于复杂,人们会忘记进入模态对话框前挂起的主任务。特别要当心创建的模态任务中包含层次视图的情况,因为人们会迷失、忘记如何返回之前的步骤。如果模态对话框必须包含不同视图下的子任务,那一定要提供给用户访问分层结构的单一、清晰的路径,不要有循环。了解使用模态视图,参见 Modal View。
Always provide an obvious and safe way to exit a modal task. People should always be able to predict the fate of their work when they dismiss a modal view.
If the task requires a hierarchy of modal views, make sure your users understand what happens if they tap a Done button in a view that’s below the top level. Examine the task to decide whether a Done button in a lower-level view should complete only the part of the task in that view, or the entire task. Because of this potential for confusion, avoid adding a Done button to a subordinate view as much as possible.
总要提供明显安全的方式来退出模态任务。人们应该能够预测退出模态视图后的操作结果。
如果任务需要层次化的模态视图,那要确保用户在点击顶级层次下面的视图中的完成按钮时,能够了解会发生什么。检查一下任务,来决定一个低层次的视图中的完成按钮是应该完成当前视图下的部分任务,还是整个任务。由于这容易让人困惑,所以尽可能避免在下级视图中加入完成按钮。
Reserve alerts for delivering essential—and ideally actionable—information. An alert interrupts the user’s experience and requires a tap to dismiss, so it’s important for users to feel that the alert’s message warrants the intrusion. To learn more, see Alert.
Respect users’ preferences for receiving notifications. In Settings, users indicate how they want to receive notifications from your app. Be sure to abide by these preferences so that users aren’t tempted to turn off all notifications from your app.
保留警告提示,用于传达基础的、理论上可操作的信息。警告提示会打断用户,还需要点击才能退出,所以务必让用户感到警告提示是有理有据的。了解更多,参见 Alert。
尊重用户获得通知的偏好。在设置里,用户表明了他们想如何从 app 中获得通知。务必遵守他们的偏好,这样用户才不至于倾向关闭 app 所有的通知。
后一篇:iOS 8人机交互指南(7)