返回《iOS Human Interface Guidelines译文》

让模态化任务表现地暂时且简单

可能的话,尽量减少进入模态化环境执行任务或提供反馈的次数。iOS 应用应该允许用户与 iOS 任意地交互(nonlinear) 。模态通过打断用户的工作流,强迫用户完成一系列操作来剥夺自由。

♦ 模态在以下情况最为适用:
♦ 很有必要获得用户的注意
♦ 没有用户明确提供的数据,该任务无法完成

用户很喜欢在模态视图里完成一个子任务, 因为场景转换清晰且短暂。 但是如果子任务太过复杂, 用户会在进入模态视图后迷失主任务。 当模态是全屏模式的或有很多分支状态时,风险还会加剧。

保持模态任务简短精炼。你应该不想让用户觉得模态任务是嵌在你程序里的一个小程序吧?千万注意别让模态任务有层级结构, 因为用户很容易忘记回去的路。 如果模态任务必须包括子任务,一定要给用户一个单一、清爽的路径来浏览层级结构,避免环形路径。

在模态任务中总是提供明显、安全的出口。用户应该总是能够在离开模态时预测他们工作的命运。

如果任务需要分层级的模态,确保用户明白如果他们点击子级页面上的 Done 按钮后会有什么结果。检查一下任务,看看子级页面上的 done 按钮按下后是结束了那一小部分任务还是结束了整个任务。可能得话,避免在子级页面加 Done 按钮,这真的很让人困惑。