【连载】IOS12设计规范——模态情景
image.png模态通过阻止人们在完成任务或关闭消息或视图之前做其他事情来创建焦点。
操作表,警报和活动视图提供模态体验。当模态视图出现在屏幕上时,用户必须通过点击按钮或以其他方式退出模态体验来做出选择。某些应用程序实现模态视图,例如在日历中编辑事件或在Safari中选择书签时。模态视图可以占据整个屏幕,整个主视图,例如弹出窗口或屏幕的一部分。模态视图通常包括退出视图的完成和取消按钮。
尽量减少使用模态。通常,人们更喜欢以非线性方式与应用互动。考虑创建模 态上下文时,只有在获得某人的注意力,必须完成或放弃任务以继续使用该应 用程序或保存重要数据时,才能创建模态上下文。
“通常,人们更喜欢以非线性方式与应用互动”。????不理解这句话怎么解释。如果有看明白的欢迎交流
创建模态的场景,只有需要完全获得人的 注意力,需要完成任务确定时或者放弃该 任务时,才需要创建模态。
提供一种明显且安全的退出模态任务的方法。确保人们在解雇模态视图时始终 知道他们行动的结果。
退出模态后的场景应当如用户的预期
保持模态任务简单,简短,重点突出。不要在您的应用中创建应用。如果模态 任务过于复杂,人们可能会在进入模态上下文时忽略他们暂停的任务。特别警惕创建涉及视图层次结构的模态任务,因为用户可能迷路并忘记如何回溯他们 的步骤。如果模态任务必须包含子视图,请提供层次结构中的单个路径以及完 成的明确路径。避免使用“完成”按钮执行除完成任务之外的其他操作。
以上总结起来可以概况为3点:
- 过于复杂的子任务,不适合使用模态。
- 子任务最好是单一路径的任务。
- 不要在子任务中使用“完成”按钮。
如果适用,显示标识任务的标题。您还可以在视图的其他部分中提供更全面描述任务或提供指导的文本。
image.png
保留提供必要且理想的可操作信息的警报。警报会中断体验并需要点击才能解除,因此人们必须认为入侵是有道理的。要了解更多信息,请参阅[警报]。
尊重通知首选项。在“设置”中,用户可以指定他们希望如何从您的应用接收通 知。遵守这些首选项,以便他们不会完全关闭您应用的通知。
不要在弹出框上方显示模态视图。除了警报之外,弹出窗口上不应出现任何内 容。在极少数情况下,如果需要在弹出框中执行操作后显示模态视图,请在显 示模态视图之前关闭弹出窗口。
使用您的应用协调模态视图外观。例如,模态视图可以包括导航栏。在这种情 况下,请使用与应用程序中导航栏相同的外观。
选择合适的模态视图样式。您可以使用以下任何一种样式:
选择适当的过渡样式以显示模态视图。使用与您的应用程序协调的过渡样式, 增强对临时上下文切换的意识。默认过渡垂直滑动模式视图从屏幕底部向上滑 动,一旦被解除则向下滑动。翻转式过渡似乎水平翻转视图以显示模态视图。在视觉上,模态视图看起来像当前视图的背面。一旦被解雇,它就会退回。在 整个应用中使用一致的模态转换样式。
有关模态视图开发人员指南,请参阅[UlViewController]和[UIPresentationController]。
模态是现在APP设计中十分常用的方法,特别适合有子流程的设计当中。给人以主流程没有中断,只是为了完成主流程而必要完成的子流程的感觉。但模态也并非设计中的万能钥匙,如果子流程较长或者分支过多则不适合使用模态,而应当让用户直接完成子流程任务再进行主流程任务。