您的位置:华清远见教育科技集团 >> iOS资料 >> iOS_UI开发之用户体验指南(三)  
 
iOS_UI开发之用户体验指南(三)
分享到:

立即启动

iOS程序应该在用户想用它们的时候立刻启动,毫无延迟。在启动时,iOS程序应该: 展示与应用程序第一屏一样的启动图片。这可以缩短对启动时间的知觉。

避免呈现“关于”窗口或者splash。一般而言,避免添加任何阻碍用户立刻使用程序的元素。

在iPhone上,提供合适的状态栏样式。通常,状态栏要和程序的其他界面部分风格一致。

以合适的默认方向启动。在iPhone上,默认的方向竖屏模式。在iPad上,默认方向是当前设备的方向。如果你的设备只支持横屏模式,就按横屏模式启动,不用管设备当前的方向。用户会去旋转设备的。

只支持横屏模式的应用应该支持两种方向的横屏模式(Home键在左或在右)。如果设备已经是横屏模式了,那就直接以此模式启动,除非有别的很好的理由。其他情况下,程序应以home键在右侧的方向启动。

避免向用户询问设置信息。应遵照以下指南:

只为80%用户解决问题。这样的话,大部分用户不需要设置,因为你的程序已经按他们期望的方式设置好了。如果某个功能只有一点点用户会用到,或者用一次就扔,这样的功能还是放弃吧。

从用户以外的地方获得尽可能多的信息。如果你要用到任何用户在内置程序中储存的信息,可以向系统提出请求。不要让用户再输一次。

如果你必须从用户那获得信息,要让用户在程序内进行输入。然后尽快把这些信息存下来。这样,用户就不用先退出程序才能进到iOS设置里。如果用户稍后还需要更改这些信息,他们可以在任何时候到程序的设置模块。

从程序上次离开的位置启动。记住如何回到上一次退出的位置不应是用户的责任。

随时准备停止

iOS程序需要在用户按下Home键的时候停止,然后打开别的程序。所以用户不会点击程序的关闭按钮或是从菜单里选择退出。为了提供好的退出体验,iOS程序应该:

经常且快速保存用户进度。因为用户可能在任何时间选择退出。

停止的时候保存当前的状态,尽可能的保留细节。这样用户再次打开程序时不会损失细节。例如,如果你的应用展示可翻页的数据,保存当前的翻页位置。

不要自动退出

绝对不要自动退出,因为用户倾向于觉得是程序崩溃了。如果你的程序确实无法像预期的那样工作,你需要告知用户当前的情景,解释他们可以做什么。基于当前情景的危机程度,你有两种选择:

展示一屏吸引人的内容,描述当前的问题,提供修正。这屏内容告知用户程序没出问题。它给予用户控制权,让他们决定是采取补救措施还是忽略报错,又或是按Home键然后打开别的程序。

如果只有部分功能失常,那就在用户使用这些功能时弹出警告框。

有必要的话,展示许可证或者免责声明

如果你提供终端用户许可协议EULA,App Store会把它展示出来。用户能在获得程序前阅读到它。

可能的话,避免用户在第一次运行程序时必须同意你的协议。没有协议的话,用户可以立刻享用你的程序。但是,即使这是更好的体验,但并不适用所有情况。如果你必须让用户签署协议,要让签署过程与你的界面和谐相处,减少对用户的打扰。

可能的话,在程序描述或者EULA中提供免责声明。用户可以在App Store中浏览它,你可以平衡商业需求和用户体验。

适用于iPad:增强交互性(别只增加功能点)

好的iPad用户给用户创新地与内容交互的体验,同时帮助用户完成任务。

忍住添加与主任务无关的功能点。探索让用户看更多、用更多的方法。不要以为iPad屏幕大是为了让你把iPhone版程序上被砍掉的功能再找回来。

为了让你的程序与众不同,想一想怎么提升用户体验,不要让琐碎的功能点干扰主任务。例如:

一个让用户可以读书、持续跟踪阅读列表的程序可以在大屏幕上给用户带来优越的阅读体验。用户不必切换到其他屏幕去管理阅读列表,就可以在弹出层里让用户把喜欢的章节复制进去。这个程序还容许用户添加书签和标注,和他人交换书单,比较阅读进度。

一个战斗机游戏可能会在屏幕前蒙一层半透明的头盔。玩家可以触摸逼真的控件迎敌,或者在地图上定位他们。

足球游戏可以展示一个更大更真实的球场以及细节更好的球员。用户可以管理队伍,定制球员。它还可以允许用户不离开球场视图就查看球员信息。它还支持多人模式,两个人可以各用一队。

记事本程序可能会提供在手绘模式与文字模式间切换的功能。用户在记录的时候可以在这些模式间切换。

适用于iPad:减少全屏转场

哪部分内容变了,就只有哪一部分转场。在某些信息变化时,不要呈现全新的一屏,尝试只是更新这一块小区域。只转换部分视图和物体,不要换全屏。大多数时候,不建议做整屏切换。

每次只切换一部分屏幕的话,你的程序看起会很稳定。这帮助用户追踪他在任务中的位置。你可以使用分栏显示、浮出层等方式取代全屏切换。

适用于iPad:抑制你的信息层级

使用大屏幕和iPad特制的UI元素,让用户可以在一个地方获取更多信息。虽然你不想把太多信息打包到一个屏幕上,你也不想让用户有必须到不同屏幕上找东西的感觉。

一般来说,主要内容集中在主屏幕上,额外信息或工具用辅助手段展示,如popover。这使人们容易获得他们所需要的功能,无需离开的主任务环境。

使用ipad的大屏幕以及分栏视图和popover等界面元素,你不必再像iPhone那样每屏展示一级。例如,你可以:

在右侧分栏放置一个导航栏,让用户沿层级结构向上回溯到顶级类目。该类目始终展示在左侧分栏中。这至少可以让你的层级结构极少一级。因为同一时刻屏幕上至少有两级内容。

在左侧分栏放置一个导航栏,让用户追溯一个比较浅的层级结构。然后,把细一层的内容呈现在右侧分栏里。这样同样可以通过同时呈现两级内容来简化层级。例如,以风机视图模式使用Mail时就使用了这种设计,在左边分栏展示账户、收件箱、邮件列表,右边分栏展示每一份邮件的内容。

使用浮出层实现操作或呈现用于操作屏幕上事物的工具。浮层可以在当前屏幕的顶部临时地展示操作和工具,这就意味着用户不必转场到其他屏幕来做这些事情。例如,竖屏模式的Mail使用浮出层来展示账户、邮件箱和邮件列表的层级结构。

在工具栏上提供分段控件,来切换不同的信息呈现方式和不同的信息分类。这样,你可以通过点击屏幕顶部或底部的一个按钮来展开浮层,切换浏览方式或分类。更多信息,请详见“工具栏”和“分段控件”。例如,iTunes在顶部工具栏提供分段控件,来切换某一类内容的浏览方式。

使用tab栏切换不同信息类别或者程序模式。在iPad程序上,tab栏更有可能被用于过滤器或者类目切换,而非模式切换。例如,iTunes使用tab栏切换不同类型的媒体。

可能的话,避免使用tab栏切换全屏,因为iPad上好减少全屏切换的场景。

适用于iPad:考虑将浮出层用于不同模态的任务

在浮出层打开或处于模态视图下时,用户不能与主屏幕交互,在这一点上两者是相似的。但是模态视图总是模态的,而浮出层可以有两种用法:

模态的:浮出层出现后,降低周围区域的亮度,需要用户主动点退出。这种情况与模态视图非常相似,但浮出层给人的感觉更轻一点。

非模态:浮出层周围的区域不会变暗,用户可以点击浮出层周围的任何区域来清除浮出层(发出激活浮出层的按钮)。这种行为方式让非模态浮出层看起来像从另一种角度观察程序,而非进入另一种状态。

另外,浮出层总是有一个小箭头,指向激活它的按钮或区域。这个线索帮助用户记住他们是从哪里进入现在这个场景中的。这也使模态浮出层看起来只是暂时的,而不像模态那样,不提示是怎么进入到模态中来的。

如果你在iPhone中用模态视图来呈现任务,可以换浮出层试试。思考以下问题可以帮助你判断使用浮出层是否合适:

该任务是否需要不同类型的输入?Y?用浮出层吧

虽然键盘兼容浮出层和模态视图,但浮出层更适合展示拾取器或一列选项。

该任务是否需要在多个层级的视图间穿梭?Y?用浮出层吧

浮出层更适合展示多个页面,因为用户不容易把它和主页面弄混。

用户希望能在任务完成前去主页面上干点什么吗?Y?用非模态浮出层吧

因为用户可以在非模态浮出层周围看到主页面。轻轻一点主页面,浮出层就消失了。记得保留浮出层里的任务进度,用户还可能再回来的。

任务足够复杂吗?是否是程序的主要功能?Y?用模态视图吧

模态视图伴随很大的转场,帮助用户专注于任务直至完成。模态试图的面积也足够大,可以放置更多的输入控件。

如果此任务是程序的主要功能,但是不是很深,模态化的浮出层会更为合适。这是因为浮出层的轻盈更适用经常执行的任务。

如果,任务只执行一次或寥寥数次,比如安装过程??用模态视图吧。

当用户只需要做一次任务的时候,他们不是很关心当前的环境。

还有些popover的其他用法,比如说提供辅助工具(更多信息,请详见浮出层(仅限iPad)”)。而且,iPad还可以吧操作列表放在浮出层里(更多信息,请详见“操作列表”)。

如果你决定使用模态视图,请查阅有哪些样式可供使用(更多信息,请详见“模态试图”)

适用于iPad:考虑将浮出层用于不同模态的任务

如果你的程序有工具栏,把它移到屏幕顶部吧,别放在下面了。iPad的屏幕非常宽,顶部的一条工具栏足够放下所有的功能。这给你更多的垂直空间展示核心内容。

例如,iPhone版Mail在浏览邮件页面的工具栏上放置了刷新,管理,删除,回复和书写。

iPad版Mail在邮件上方的工具栏提供了其中四个按钮。刷新按钮移到了邮件箱列表。

因篇幅太长相关的内容请查看“iOS_UI开发之用户体验指南(一)”及“iOS_UI开发之用户体验指南(二)”

 更多相关文章

·iOS_UI开发之用户体验指南(二)
·iOS_UI开发之用户体验指南(一)
·iOS_UI开发案例分析:移植到iOS
·iOS_UI开发之程序设计策略
·iOS_UI开发之程序设计策略