首页 > 学院 > 开发设计 > 正文

iOSHumanInterfaceGuidelines(原创翻译)第四章

2019-11-14 18:37:54
字体:
来源:转载
供稿:网友

开始和停止

·立刻开始

有一种说法是人们最多花费1或者2分钟来评价一个新的app。当你立刻呈现有用的内容来充分利用这段短暂的时光的时候,你激起了新用户的兴趣并给予用户一种优秀的体验。

重点:不要告诉人们在安装完你的app之后要重启设备。重启会花费时间并且让你的app看起来不可靠和不好用。如果你的app有内存使用问题或者其它问题使它很难运行,除非系统刚刚启动才行,那么你需要解决这些问题。如果要寻求开发良好品质的app的指导,请参阅iOS app编程指导中的高效使用内存。

尽可能地避免展示一个色块屏幕或者启动界面。如果用户能够直接使用你的app,这是最好的。

避免要求人们去提供安装信息。相反:

  ·聚焦于你的80%用户的需求。当你这样做的时候,大多数人将不用不得不提供设置信息,因为app已经被设置好来以他们希望的方式来运行。如果有功能只有一小部分用户可能想要---或者大部分用户不想要---那就忽略它。

  ·从其他源获得尽可能多的信息。如果你能使用任何人们在内置app或者设备设置里提供的信息,向系统询问这些值。不要要求人们再次输入。

  ·如果你必须请求安装信息,鼓励人们在你的app中输入。接着,尽可能快地存储这些信息(潜在地,在你app的设置中)。通过这种方式,在人们能够有机会使用欣赏你的app之前不用被强制转换到设置界面。如果人们稍后需要修改这些信息,他们可以在任何时间在app的设置中修改。

·尽可能长地延迟一个登录要求。当用户能够不用登录就导航到你的app中的大部分内容并且使用它的功能的一部分,这是最好的。举例来说,App Store不会要求用户登录知道他们绝对购买东西。用户经常抛弃在他们能做一些有用的事情之前就强制他们登录的app。

如果必须要求用户登录,在登录视图中展示一个简洁,友好的解释来告诉用户这么做得原因,以及他们能从中收获何种好处。

·在提供新手引导之前慎重考虑。(新手引导介绍了一个app的特点并解释如何进行常见的任务。)在你考虑新手引导之前,尽可能地尝试去改善你app的设计因此它的所有特点和任务是很容易被使用并且被发现的。引导并不是一个app良好设计的替代。如果你仍然感觉引导很重要,遵循这些原则来创建一个简明的,目的性强的不会妨碍用户的体验:

  ·仅仅提供用户开始所需要的信息。一个优秀的引导体验向用户展示首先要做的事或者简明地描述一些大多数用户都感兴趣的特征。如果你在用户有机会探索你的app之前就提供太多信息,你就使用户有责任去记住他们现在不需要的细节,你甚至可能在传达一种你的app很难使用的信息。如果一些特定的任务需要额外的引导,那就仅仅当用户在执行这些任务时候提供引导。

  ·使用动画和交互来激起用户的兴趣并且帮助他们从实践中收获。谨慎地添加文本,只有当它能够丰富体验的时候才添加;不要期待用户会去阅读很长的文章。举例来说,当你能使用动画来向用户展示能做什么的时候就不要去描述如何执行一个简单的任务。为了引导用户完成更复杂的任务,你可能添加一个短暂的覆盖视图,对用户将要做的每一步简明地描述。尽可能地避免展示你app的全屏截图,因为它们不能交互,并且它们和app的UI可能会使用户产生迷惑。

  ·使退出或跳过新手引导很容易。在用户浏览过新手引导之后,他们一般不想再看一遍;其它用户可能压根就不想看。确保记住用户做出的选择,不要在他们每次打开app的时候都强迫他们做选择。

·避免经常请求用户去对你的app评级。频繁地请求你的用户去为你的app评分倾向于惹恼用户还可能会你收到的用户反馈的数量。为了鼓励充分考虑的反馈,在你请求他们对你的app评分之前确保给用户一个机会来形成对你的app的意见。举例来说,你可能得等待直到用户已经观看了一小部分不同的屏幕或者完成了一小部分任务。

·通常来说,以设备当前的定向加载。然而,如果你的app仅仅在一个定向运行,你应该经常以那个定向加载,如果有必要,让用户旋转设备。举例来说,如果一个游戏或者媒体浏览软件仅仅在水平定向运行,那么以水平定向加载是很合适的,甚至设备当前是垂直定向。这样的话,如果用户在设备垂直的话启动了app,他们直到旋转到水平来浏览内容。

注意:当一个只能水平运行的app支持水平定向的两种变体这是最好的。如果设备已经是水平定向,那么app应该以当前的变体加载。否则的话,app应该以Home键在右边这种变体加载。(要想了解更多关于支持不同的设备定向的信息,请参阅 适配和布局 。)

·展示一个加载文件或者图片。iOS展示一个加载图片在你app启动的时刻---给用户一种你的app启动很快地印象,并且也给你的app足够的时间来加载内容。在 加载图片 中学习如何制作一个加载文件或者图片。

·如果可能的话,避免要求用户在能够做任何事之前去阅读一个声明或者同意终端用户许可证。相反,你可以在App Store展示你的声明或者EULA,因此人们能够在获得你的app之前对它进行授权。如果你必须在你的app内部提供这些事物,确保以一种和你的UI相一致的方式来集成它们,并且在商业需求和用户体验需求之间做到平衡。

·当你的app重新启动的时候,储存它的状态,这样的话用户就能够在他们离开的地方继续。人们不应该不得不记住他们先前采取的步骤来达到在你的app中以前的位置。想学习更多关于存储和恢复你的app状态的高效方法,请参阅iOS app编程指导中的 在所有加载中保存你的app中的可视化外观。

·无时无刻做好准备停止

一个iOSapp从来不摆放一个关闭或者退出选项。人们停止使用一个app当他们转换到其它的app,返回主界面,让他们的设备进入休眠状态(锁屏?)的时候。

当人们从你的app离开,iOS多任务处理会把它过渡到后台,并用新打开app的UI来取代它的UI。为了应对这种情况,你的app应该:

  ·以比较合理的频度尽可能地储存用户数据。一定要这样做因为后台的app会在任何时候被告知退出或者终止。

  ·可能的话,停止时候在细节的最精确地程度保存当前状态。这样的话,人们不会失去他们先前的环境当再切换回你的app的时候。举例来说,如果你的app展示滚动信息,保存当前滚动的位置。你可以在iOS app编程指导中的 在所有加载中保存你的app中的可视化外观 学习更多关于保存和恢复你app状态的高效方法。

一些app可能需要在后台继续保持运行当用户在前台使用另一个app的时候。举例来说,用户可能想要继续听在一个app播放的歌当他们正在使用一个不同的app来检查他们的To-Do列表或者玩一个游戏的时候。学习如何正确优雅地处理多任务,请参阅多任务处理。

·永远不要程序上退出一个app。人们倾向于把这个解释为程序崩溃。如果有一些事阻止了你的app如所希望的功能运行,你需要告诉用户情况并且向他们解释他们可以怎么对待这个情况。这里有两个这样做的例子:

  ·如果app的所有特征都无法得到,展示一个屏幕来描述这个情况并建议一个解决方法。这种信息会给予用户反馈,并向他们确保你的app并没有什么问题。这也让用户获得控制权,让他们自己决定他们是否想要采取改正措施继续使用你的app或者切换到其它app。

·如果只有一些app 的特征是不可访问的,当用户使用这些特征的时候要么展示一个屏幕要么显示一个警告。否则,人们应该能够使用app的剩余部分。如果你决定使用一个警告,确保当用户试图访问那些不能正常工作的特征的时候显示它。

ps:总感觉features 翻译为特征不太合适,但是找不到合适的替换的词。这篇也好长啊!!!又找到个更加实用的 app PRogramming guide for ios!!!


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表