进度指示符告知用户 App 在载入内容或执行长时间操作时未卡死。

部分进度指示符还可让用户预计需要等待任务完成的时长。所有进度指示符都是瞬态的,仅在操作进行时显示,并在操作完成后消失。
操作的时长要么已知,要么未知,因此进度指示符有两种类型:
确定型和不确定型进度指示符的外观不同,具体取决于平台。确定型进度指示符会随着任务的完成填充线性或圆形轨道来显示任务进度。进度条包括从前沿向后沿填充的轨道。圆形进度指示符具有沿顺时针方向填充的轨道。

不确定型进度指示符(也称为活动指示符)使用表示进度的动态图像。所有平台都支持看起来旋转的圆形图像;但是,macOS 还支持不确定型进度条。

尽量使用确定型进度指示符。不确定型进度指示符显示进程正在运行,但对用户预计任务需要多长时间没有帮助。确定型进度指示符有助于用户决定是在等待任务完成的同时执行其他操作、在其他时间重新开始该任务还是放弃任务。
报告确定型进度指示符的进度时,做到尽量精确。考虑将进度速度均等化,这样有助于用户相信任务完成所需要的时间。显示 5 秒钟完成 90%,而需要 5 分钟完成剩下的 10%,这会让用户质疑你的 App 是否仍在运行,甚至会感到受骗。
保持进度指示符不断移动,以便用户知道操作仍在继续。如果指示符静止不动,用户倾向于认为进程已经卡死或者 App 停止响应。如果进程由于某些原因卡死,请提供反馈以帮助用户理解问题所在以及应该执行什么操作。
尽可能将进度条从不确定型切换到确定型。如果不确定的进程发展到你可以确定其时长,请切换至确定型进度条。用户通常更愿意看到确定型进度指示符,因为这有助于他们判断正在执行的操作以及耗时。
不要从圆形样式切换至条形样式。活动指示符(也称为旋转图标)和进度条的形状和大小不同,因此在二者之间转换会扰乱界面并困扰用户。
如果有用,显示一则描述,为任务提供更多上下文。力求精确且简洁。避免采用正在载入或正在认证这样模棱两可的词,因为这类词很少提供更多价值。
在一致位置显示进度指示符。为进度指示符选择一致位置有助于用户在不同平台间、App 内或者 App 之间可靠地找到操作的状态。
如果可行,让用户中止进程。如果用户可以中断进程而不会带来负面影响,请包括“取消”按钮。如果中断进程可能带来负面影响,例如丢失文件已下载的部分,在“取消”按钮之外提供“暂停”按钮也很有用。
如果用户中止进程会带来负面影响,请明确告知。如果取消进程会导致进程丢失,那么提供包括确认取消或恢复进程选项的提醒十分有用。
无针对 Apple tvOS 或 visionOS 的额外考量因素。
刷新控制可让用户立即重新载入内容(通常在表格视图中),无需等待内容下次自动更新。刷新控制是一种默认隐藏的专门类型活动指示符,当用户下拉想要重新载入的视图时变为可见。例如,在“邮件”中,用户可以下拉“收件箱”邮件的列表以检查新邮件。

自动更新内容。虽然用户希望能够立即刷新内容,但也期望能够定期自动刷新。不要让用户负责发起每次更新。通过定期更新来刷新数据。
仅在有价值时提供短标题。刷新控制可以选择包括标题。这一点在大多数情况下不必要,因为控制的动画表示正在载入内容。如果确需包括标题,不用将其用于解释如何进行刷新。相反,请提供与正刷新内容有关的有价值信息。例如,“播客”中的刷新控制使用标题告诉用户上次播客更新的时间。
在 macOS 中,不确定型进度指示符能够以条状或圆形外观呈现。两个版本都使用动态图像表示 App 正在执行任务。

若要传达后台操作的状态或空间受限,应首选活动指示符(旋转图标)。旋转图标一般较小且不太显眼,因此适合用于异步后台任务,例如从服务器收取邮件。旋转图标还适合用于在狭小的区域(例如在文本栏内或诸如按钮这样特定控制的旁边)中传达进度。
避免为旋转进度指示符添加标签。旋转图标通常在用户启动进程后出现,因此一般不需要添加标签。
系统默认在场景的背景颜色上显示白色的进度指示符。你可以通过设置进度指示符的色调来更改其颜色。

有0人收藏了本文