不要让人们盯着静态的屏幕,等待应用加载内容或执行冗长的数据处理操作。使用活动指示器和进度条,让人们知道你的应用没有停止,并让他们了解等待的时间。

另请参阅加载

活动指示器

执行无法量化的任务(如加载或同步复杂数据)时,活动指示器显示旋转。任务完成后它会消失。活动指示器是非交互的。

Activity_Indicators.mp4 (47.61KB) 进度条优于活动指示器。如果活动是可量化的,请使用进度条而不是活动指示器,以便人们能够更好地评估正在发生的事情以及需要多长时间。

活动指标保持运动状态。人们见到停滞的活动指示器会认为进程暂停。保持活动指示器旋转,让用户知道进程正在进行。

如果有用,请在等待任务完成时提供有用的信息。在活动指示器上方附加一个标签,以提供额外的上下文。避免使用模糊的术语,如 加载 验证,因为它们不会增加任何值。

有关开发人员指南,请参阅 UIActivityIndicatorView

进度条

进度条包括从左到右填充的轨迹,用于显示已知时间的任务进度。进度条是非交互式的,尽管它们通常附带一个用于取消相应操作的按钮。

Progress_Bar.mp4 (35.86KB) 始终准确报告进度。不要只是为了使应用显得繁忙而显示不准确的进度信息。仅对可量化的任务使用进度条。否则,请使用活动指示器。

对持续时间明确的任务使用进度条。进度条非常适合显示任务的状态,尤其是当它有助于显示任务需要多长时间时。

在导航栏和工具栏中隐藏轨道的未填充部分。默认情况下,进度条的轨道包括填充和未填充的部分。当在导航栏或工具栏中使用时(如表示页面加载)时,应配置进度栏以隐藏轨道的未填充部分。

请考虑自定义进度栏的外观以匹配应用。进度栏的外观可以进行调整,以匹配应用的设计。例如,你可以为轨道和填充指定自定义颜色或图像。

有关开发人员指南,请参阅 UIProgressView

网络活动指示器*

在 iOS 12 及更早版本、非全屏显示器的设备上,当网络进行时,网络活动指示器会在屏幕顶部的状态栏中旋转。当网络完成时则网络活动指示器消失。此指标看起来像一个活动指标,并且是非交互的。

network_activity.mp4 (21.7KB) 仅针对持续时间超过几秒的网络操作显示此指示器。不要对快速的网络操作显示指示器,因为它可能会在用户注意到或意识到它的含义之前消失。

另请参阅状态栏。有关开发人员指南,请参阅 UIApplicationnetworkActivityIndicatorVisible 方法。