定义
不要让你的用户坐在屏幕前,面对着一个静止的画面,等待着你的产品执行一个需要长时间加载的任务。请使用进度指示器让用户知道你的 app没有崩溃,它只是在加载一个较大的数据,并且告知大概需要多长时间,以及给出一些消遣方法供用户观看或者交互。
进度指示器 之 活动指示器/圆形进度条
当一个不可估计时间的任务执行时,活动指示器会不停的旋转。例如正在加载或者同步复杂的数据。当任务完成时会消失并给予完成提示。活动指示器是不可交互的。
如果可以请尽量使用进度条。如果活动是可以被预估时间的,请尽量使用进度条来代替活动指示器,以便用户能够更好的预估发生了什么以及多久能够完成。
保持活动指示器一直在转动。持续不断转动的活动指示器可以告知用户后台正在工作,而不是卡顿或崩溃。
如果可能的话请在用户等待时提供一些有用的信息或交互。可以给予一些额外的信息,避免使用诸如加载或身份验证之类的模糊术语,因为它们通常不会增加任何价值。可以增加一些关于产品内功能的广告、产品的不为人知的攻略等等。
活动指示器出现的位置代表着不同位置的正在加载。例如,以屏幕为中心的活动指示器指示初始加载过程;当放置在现有内容之上或之下时,他们会引起用户对于新内容的注意。
进度指示器 之 进度条
进度条包括一个细长的条,并从左至右填充颜色以展示一个任务的进度。进度条不可交互,但是用户可以通过「取消」按钮来取消相应的操作。
请保证进度反馈精确。不要为了 让你的产品看起来运行的很快而显示不精确的进度信息。但通常情况下为了缓解用户的焦虑,进度条的前半段会加载的稍快,而在后半段映射主要的加载任务。
将未加载的进度条部分隐藏在页面中。在默认值中,进度条包括已加载和未加载两部分。将未加载的部分隐藏在页面中不显示,一方面可以使页面精简,取出不必要的颜色;另一方面可以缓解人们的焦虑,引导用户不去关注“还有多少未加载”。
可考虑将进度条的设计符合产品基调。
活动指示器的延展 - Skeleton Screen
用户体验一直是前端开发需要考虑的重要部分,在数据请求时常见到锁屏的loading动画,而现在越来越多的产品倾向于使用Skeleton Screen Loading(骨架屏)替代,以优化用户体验。
Skeleton Screen(骨架屏)就是在页面数据尚未加载前先给用户展示出页面的大致结构,直到请求数据返回后再渲染页面,补充进需要显示的数据内容。常用于文章列表、动态列表页。
无论是PC端还是移动端,只要有数据请求都会出现一定的延迟时间,之前对于这段等待时间的处理也是各不相同。同步请求中页面会卡住,直到请求完成,用户期间无法进行任何操作,有一种死机的感觉,体验较差。异步请求中大多数会以锁屏的loading动画过渡等待时间,于是,也就出现了制作不同Loadng状态的炫技。
小结
前端优化仿佛是一种无止境的探索,尤其是现在产品对于用户体验的重视,任何一点体验的改善与提升都会增加用户的友好度,最终使产品留下一个好印象。