IOS 12设计规范(2):应用架构(App Architecture)

点击前往本读书笔记总目录

2 应用架构

2.1   无障碍(Accessibility)

iOS为视力丧失,听力丧失和其他残疾的用户提供⼴广泛的辅助功能。⼤多数基于UIKit的应用程序都可以轻松访问,允许更多人使用您的应用程序,同时为所有人提供同样有吸引力的体验。

IOS12设计规范

为图像,图标和界面元素提供替代文本标签
替代⽂字标签在屏幕上不可见,但它们让VoiceOver可听见地描述屏幕上的内容,使视力障碍人⼠更容易导航。

响应可访问性首选项
如果您的应用程序使用UIKit实现其用户界面,则文本和界面元素会⾃动适应某些可访问性首选项,例如粗体和⼤文本。您的应用还应在适当时检查并响应辅助功能首选项,例如启用减少运动的选项时。实现自定义字体的应用程序应尝试匹配系统字体的可访问性行为。

使用辅助功能测试您的应用
除了文本和动作更改外,辅助功能选项还可以更改对比度,反转颜⾊,降低透明度等。启用这些设置并观察您的应用在启用这些功能的用户中的外观和行为方式。

包括隐藏式字幕和音频说明
隐藏式字幕允许聋人和听力障碍者在视频中感知口头对话和其他可听内容。音频描述为视障人⼠提供重要视频内容的口头叙述。

使用足够的颜⾊对比度
您的应用中对比度不足会让每个人都难以阅读内容。例如,图标和文本可能与背景混合在一起。在线颜⾊对比度计算器器可帮助您准确分析应用中的颜⾊对比度,以确保其符合最佳标准。力争最⼩对比度为4.5:1,尽管7:1是首选,因为它符合更严格的可访问性标准。有关其他设计指南,请参阅颜⾊。

有关更多信息,请参阅适用于iOS的iOS辅助功能和辅助功能编辑指南。

2.2 载入中(Loading)

当内容加载时,空白或静态屏幕可能会使您的应用程序被冻结,从⽽导致混淆和沮丧,并可能导致人们离开您的应用。

IOS12设计规范

在加载发⽣时明确说明
至少,显示一个活动微调器,表示正在发⽣的事情。更好的是,显示明确的进度,以便用户可以判断他们将等待多⻓时间,尽快显示内容。在看到他们期望的屏幕之前,不要让人们等待内容加载。⽴即显示屏幕,并使用占位符文本,图形或动画来确定内容尚不可用的位置。在    内容加载时替换这些占位符元素。尽可能在后台预加载即将播放的内容,例如在播放动画或用户正在导航关卡或菜单时。

教育或娱乐人们掩盖装载时间
考虑显示有关游戏玩法,娱乐视频序列列或有    趣的占位符图形的提示。

IOS12设计规范

自定义加载屏幕
虽然标准的进度指标通常是正常的,但它们有时会感觉脱离背景。考虑通过自定义动画和与您的应用或游戏风格相匹配的元素来设计更加身临其境的体验。有关其他指导,请参阅进度指示器。

2.3     模态情景(Modality)

模态通过阻止人们在完成任务或关闭消息或视图之前做其他事情来创建焦点。操作表,警报和活动视图提供模态体验。当模态视图出现在屏幕上时,用户必须通过点击按钮或以其他方式退出模态体验来做出选择。某些应用程序实现模     态视图,例如在日历中编辑事件或在Safari中选择书签时。模态视图可以占据整个屏幕,整个主视图,例如弹出窗口或屏幕的一部分。模态视图通常包括退出视图的完成和取消按钮。

IOS12设计规范

尽量减少使用模态
通常,人们更喜欢以非线性方式与应用互动。考虑创建模态上下⽂时,只有在获得某人的注意力,必须完成或放弃任务以继续使用该应用程序或保存重要数据时,才能创建模态上下⽂。

提供一种明显且安全的退出模态任务的方法
确保人们在解雇模态视图时始终知道他们行动的结果。

保持模态任务简单,简短,重点突出
不要在您的应用中创建应用。如果模态任务过于复杂,人们可能会在进⼊模态上下⽂时忽略他们暂停的任务。特别警惕创建涉及视图层次结构的模态任务,因为用户可能迷路并忘记如何回溯他们的步骤。如果模态任务必须包含子视图,请提供层次结构中的单个路径以及完成的明确路径。避免使用“完成”按钮执行除完成任务之外的其他操作。

如果适用,显示标识任务的标题
您还可以在视图的其他部分中提供更全面描述任务或提供指导的文本。

保留提供必要且理想的可操作信息的警报
警报会中断体验并需要点击才能解除,因此人们必须认为入侵是有道理理的。要了解更多信息,请参阅警报。

尊重通知首选项
在“设置”中,用户可以指定他们希望如何从您的应用接收通知。遵守这些首选项,以便他们不会完全关闭您应用的通知。

不要在弹出框上方显示模态视图
除了警报之外,弹出窗口上不应出现任何内 容。在极少数情况下,如果需要在弹出框中执行操作后显示模态视图,请在显     示模态视图之前关闭弹出窗口。

使用您的应用协调模态视图外观
例如,模态视图可以包括导航栏。在这种情况下,请使用与应用程序中导航栏相同的外观。

选择合适的模态视图样式
您可以使用以下任何一种样式:

IOS设计规范


选择适当的过渡样式以显示模态视图
使用与您的应用程序协调的过渡样式,增强对临时上下⽂切换的意识。默认过渡垂直滑动模式视图从屏幕底部向上滑动,一旦被解除则向下滑动。翻转式过渡似乎⽔水平翻转视图以显示模态视图。在视觉上,模态视图看起来像当前视图的背面。一旦被解雇,它就会退回。在整个应用中使用一致的模态转换样式。

有关模态视图开发人员指南,请参阅UIViewControllerUIPresentationController。

 

2.4     导航(Navigation)

人们往往不知道应用程序的导航,直到它不符合他们的期望。您的⼯工作是以支持应用程序结构和目的的方式实现导航,而无需关注⾃身。导航应该感觉⾃然和熟悉,并且不应该主导界面或将焦点从内容中拉开。在iOS中,有三种主要的导航样式。

分层导航

每个屏幕做一个选择,直到到达⽬的地。要前往另一个⽬的地,您必须回溯您的步骤或从头开始并做出不同的选择。设置和邮件使用此导航样式。

IOS设计规范

IOS12设计规范

始终提供清晰的路径
人们应该始终知道他们在您的应用中的位置以及如何到达下一个⽬的地。无论导航风格如何,通过内容的路径都是合乎逻辑的,可预测的并且易于遵循。一般来说,给人们一个通往每个屏幕的路径。如果他们需要在多个上下文中查看屏幕,请考虑使用操作表,警报,弹出窗口或模态视图。 要了解更多信息,请参阅操作表,警报,弹出窗口和模态。

设计一种信息结构,使其快速轻松地获取内容
以需要最少数量的点击,滑动和屏幕的方式组织您的信息结构。

使用触摸手势创建流动性
使用最小的摩擦力轻松移动界面。例如,您可以让人们从屏幕侧面滑动以返回上一个屏幕。

使用标准导航组件
尽可能使用标准导航控件,例如页面控件,选项卡栏,分段控件,表视图,集合视图和拆分视图。用户已经熟悉这些控件,并且会直观地了解如何绕过您的应用。

使用导航栏遍历数据层次结构
导航栏的标题可以显示层次结构中的当前位置, 后退按钮可以轻松返回上一个位置。有关具体指导,请参阅导航栏

使用选项卡栏显示对等类别的内容或功能
标签栏可让人们快速轻松地在不同类别之间切换,无论当前位置如何。有关具体指导,请参阅选项卡栏

当您有多个相同类型内容的页面时,请使用页面控件
页面控件清楚地传达可用页面数和当前活动页面数。Weather应用程序使用页面控件来显示特定于位置的天气页面。有关具体指导,请参阅页面控件

IOS12设计规范

2.5     新手上路(Onboarding)

启动时间是您第一次登上新用户并重新连接返回的用户。设计快速,有趣和有教育意义的发布体验。

IOS12设计规范

提供启动屏幕。应用程序启动时会出现启动屏幕,从⽽给人的印象是应用程序

快速响应,同时允许加载初始内容。此屏幕很快就会被您应用的第一个屏幕取     代,因此除了可本地化的文本和交互元素外,它应该与此屏幕非常相似。要了      解更多信息,请参阅启动屏幕

以适当的⽅向发射
如果您的应用支持纵向和横向模式,则应使用设备的当前⽅向启动。如果您的应用仅在一个⽅向上运行,则应始终以该⽅向启动,并让人们在必要时轮换设备。除非有令人信服的理由,否则横向模式的应用程序应正确定位,无论设备是向左还是向右旋转。有关其他指导,请参阅适应性和布局。

迅速采取
避免显示启动画面,菜单和说明,这样会缩短内容并开始使用您的应用。相反,让人们潜入。如果您的应用需要教程或介绍序列,请提供一种跳过它们的方法,而不是向返回的用户显示它们。

预计需要帮助

积极寻找人们可能被卡住的时间。例如,游戏可以在暂停或角⾊没有前进时随便显示有用的提示。让用户重播教程,以防他们第一次错过任何内容。

坚持教程中的要点
为初学者提供指导是好的,但教育并不能代替优秀的应用程序设计。首先,让您的应用程序直观。如果需要太多指导,请重新访问您的应用程序的设计。

让学习变得有趣和可被发现
边做边学比阅读指令清单更有趣,更有效。使用动画和交互性逐步和上下⽂教学。避免显示看似互动的屏幕截图。

避免事先询问设置信息
人们希望应用能够正常运作。为⼤多数人设计您的应用程序,让少数想要不同配置的应用程序调整设置以满足他们的需求。尽可能从设备设置和默认值或通过同步服务(如iCloud)派⽣设置信息。如果您必须询问设置信息,请在第一次在应用内提示,并让用户稍后在您应用的设置中进行修改。

避免显示应用内许可协议和免责声明
在App下载之前,让App Store显示协议和免责声明。如果您必须在应用程序中包含这些项目,请以平衡的方式集成它们,而不会破坏用户体验。

当您的应用重新启动时,恢复以前的状态
不要让人们回溯到您应用中的先前位置。保留并恢复应用的状态,以便他们可以在中断的位置继续操作。

不要让人们过快或过于频繁地为您的应用评分
过快或过于频繁地要求评级是  令人讨厌的,并且会减少您收到的有用反馈的数量。为了⿎励考虑周全的反馈,在要求评级之前,让人们有时间对您的应用发表意见。始终提供退出评级提示的方法,并且永远不要强迫用户为您的应用评分。

不要⿎励重启
重新启动需要花费时间,使您的应用程序看起来不可靠且难以使用。如果您的应用程序有内存或其他问题导致难以运行,除非系统刚刚启动, 您需要解决这些问题。

2.6     请求权限(Requesting Permission)

用户必须授予应用访问个人信息的权限,包括当前位置,日历,联系信息,提醒和照片。虽然人们很欣赏使用可以访问此信息的应用程序的便利利性,但他们也希望能够控制其私有数据。例如,人们喜欢能够使用⾃⼰的实际位置⾃动标记照片或找到附近的朋友,但他们也希望选择禁用此类功能。

IOS12设置规范

仅在您的应用明确需要时才会请求个人数据
对个人信息的请求持怀疑态度是很⾃然的,特别是在没有明显需要的情况下。确保仅在人们使用明确需要个人数据的功能时才会发出权限请求。例如,应用可能仅在激活位置跟踪功能时请求访问当前位置。

解释您的应用需要信息的原因
提供自定义文本(称为目的字符串或用法说明字符串)以显示在系统的权限请求警报中,并包含一个示例。保持⽂字简短和具体,使用句子,并礼貌,所以人们不会感到压力。无需包含您的应用名称 – 系统已标识您的应用。有关开发人员指导,请参阅保护用户的隐私。

IOS12设置规范

仅在您的应用运所需时才会在启动时请求权限
如果您的应用程序显然依赖于他们的个人信息来操作,则用户不会被此请求所困扰。

不要不必要地请求位置信息
在访问位置信息之前,请检查系统以查看是否已    启用位置服务。有了这些知识,您可以延迟警报,直到功能真正需要它,或者    完全避免警报。要了解如何实现位置功能,请参阅MapKit位置、地图编程指南

 

2.7     设置(Settings)

某些应用可能需要提供一种方法来进行设置或配置选择,但⼤多数应用可以避免或延迟这样做。成功的应用程序可以⽴即适用于⼤多数人,同时还提供一些方便的方式来调整体验。当您将应用程序设计为以⼤多数人期望的方式运行时,您可以减少对设置的需求。

IOS12设置规范

推断你可以从系统中得到什
如果您需要有关用户,设备或环境的信息,请尽可能向系统查询,而不是询问用户。例如,不要让某人输入他们的邮政编码,以便您可以提供本地选项,请求使用他们当前位置的权限。

周到地优先考虑应用程序中的配置选项
您的应用程序的主屏幕是一个选择必要或经常更改的好地方。辅助屏幕更适合仅偶尔更改的选项。

“设置”中公开不经常更改的配置选项
“设置”应用是在整个系统中进行配置  更改的中心位置,但人们必须离开您的应用才能到达⽬的地。在您的应用程序中直接调整设置会更方便。如果必须提供很少需要更改的设置,请参阅“  首选项和设置编程指南”中的“ 实现iOS设置包”以获取开发人员指南。

IOS12设置规范

在适当的时候提供设置的快捷方式
如果您的应用包含将用户定向到“设置”的文本,例如“转到设置> MyApp>隐私>位置服务”,则会提供一个⾃动打开该位置的按钮。对于开发人员指南,请参阅open Settings URL StringUI App lication 的。

文章转载请注明出处,并需展示来源网址!:淘盒子 » IOS 12设计规范(2):应用架构(App Architecture)

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏