河南键盘价格联盟

IOS 人机交互指南中文版 下

精致的猪猪女孩xinyo2018-06-22 18:22:34

小清新色块标题

按钮

按钮启动特定于应用程序的操作,具有可定制的背景,可以包含标题或图标。系统为大多数用例提供了许多预定义的按钮样式。您还可以设计完全自定义的按钮。

有关开发人员指南,请参见UIButton。

系统按钮

系统按钮通常出现在导航栏和工具栏中,但是可以在任何地方使用。

在标题中使用动词。一个特定于动作的标题显示一个按钮是交互式的,当你点击它时会发生什么。

使用标题标题。除冠词、并列连词和四个或更少字母的介词外,每个词都要大写。

保持简短的标题。超长的文本会使你的界面拥挤不堪,在更小的屏幕上可能会被截断。

考虑只在必要时添加边框或背景。默认情况下,系统按钮没有边框或背景。然而,在某些内容领域,边界或背景是表示交互性的必要条件。在手机应用中,边框的数字键强化了传统的打电话模式,而呼叫按钮的背景提供了一个很容易击中的醒目目标。

有关开发人员指南,请参见UIButton的UIButtonTypeSystem按钮类型。

详细披露按钮

一个详细的披露按钮会打开一个视图——通常是一个模式视图——包含与屏幕上某个特定项相关的附加信息或功能。尽管您可以在任何类型的视图中使用它们,但是在表中通常使用细节披露按钮来访问关于特定行的信息。

在表中适当地使用详细信息披露按钮。当表行中出现了一个细节披露按钮时,单击该按钮将显示其他信息。在其他地方单击可选择行或导致应用程序定义的行为。如果您希望人们点击整个行来查看更多细节,请不要使用详细信息披露按钮。相反,使用一个详细的信息披露辅助控制,它看起来像一个雪佛龙。看到UITableViewCell UITableViewCellAccessoryType。

有关开发人员指南,请参见UIButton的UIButtonTypeDetailDisclosure按钮类型。

信息按钮

Info按钮在翻转视图之后显示关于应用程序的配置细节,有时在当前视图的背面。Info按钮有两种样式——浅色和深色。选择最适合你应用程序设计的风格,并且不会在屏幕上丢失。

对于开发者指南,请参阅UIButtonTypeInfoLight和UIButtonTypeInfoDark按钮类型的UIButton。

添加联系人按钮

用户可以点击添加按钮来浏览现有联系人列表,并选择一个用于插入文本字段或其他视图。例如,在邮件中,您可以在消息的To字段中单击Add Contact按钮,从联系人列表中选择收件人。

除了添加联系人按钮之外,允许键盘输入。Add Contact按钮为输入联系信息提供了一种替代方法,而不是替代方法。提供它作为添加现有联系人的快捷方式是可以的,但是也可以让人们通过键盘输入联系人信息。


编辑菜单

人们可以触摸、持有或双击文本字段、文本视图、web视图或图像视图中的元素来选择内容并显示编辑选项,如复制和粘贴。

显示当前上下文的适当命令。默认情况下,选项包括剪切、复制、粘贴、选择、选择All和删除命令,其中任何命令都可以选择性地禁用。如果没有选择,菜单不应该显示需要选择的选项,比如复制或剪切。类似地,如果已经选择了某样东西,菜单不应该有Select选项。

如果需要,调整编辑选项的位置。默认情况下,菜单位于插入点或选择的上方或下方,取决于可用空间,并包含指向相关内容的指针。虽然你不能改变菜单的形状,但它的位置是可配置的——你可以阻止它覆盖你的重要内容或部分界面。

不要使用与编辑菜单相同的功能来实现其他控件。提供多种方式来启动操作会导致用户体验不一致,导致混乱。如果你的应用程序允许人们使用菜单来复制内容,例如,不要实现一个复制按钮。

允许选择和复制可能有用的不可编辑文本。人们通常希望在电子邮件、便笺或网络搜索中添加静态内容,比如图像标签或社交媒体状态。

不要在按钮上添加编辑选项。如果你这样做,那些想要显示选项的人最终会激活按钮。

让编辑可撤销的操作。在执行操作之前,菜单不需要确认。因为有些人在执行一个操作后可能会改变主意,所以一定要实现撤销和重做支持。

使用有用的自定义命令展开编辑选项。您可以通过提供附加的特定于应用程序的命令来增加值。与标准命令一样,任何自定义命令都应该对选定的文本或对象进行操作。

在系统提供的命令之后显示自定义命令。不要将自定义命令与系统提供的命令穿插在一起,这些命令是众所周知的,并且经常使用。

最小化自定义命令的数量。不要给人们太多的选择。

保持自定义命令名的简短。命令名应该是简洁地描述要执行的操作的动词或简短的动词短语。使用标题式的大写——除文章外的每个词都大写,并列连词和四个或更少字母的介词。

有关开发人员指南,请参阅iOS和UIMenuController的文本编程指南中的复制、剪切和粘贴操作。


标签

标签描述屏幕上的接口元素或提供短消息。虽然人们不能编辑标签,但他们有时可以复制标签的内容。标签可以显示任何数量的静态文本,但最好保持简短。

保持清晰的标签。标签可以包含纯文本或样式文本。如果您调整标签的样式或使用自定义字体,请确保不牺牲可读性。最好采用动态类型,这样当用户更改设备上的文本大小时,标签仍然看起来不错。看到动态类型。您还应该使用可访问性选项(如粗体文本)测试标签。看到易访问性。


页面控件

页面控件显示当前页面在一个平面列表中的位置。它以一系列小指示点的形式出现,以打开页面的顺序表示可用页面。一个实点表示当前页面。在视觉上,这些点总是等距的,如果屏幕上出现了太多的点,就会被剪掉。用户可以点击页面控件的前缘或后缘来访问下一页或前一页,但他们不能点击特定的点到特定的页面。导航总是按顺序进行的,通常是将页面移到一边。

不要使用带有层次化页面的页面控件。页面控件不显示页面是如何关联的,也不指示哪个页面对应于每个点。这种类型的控件是为那些彼此对等的页面设计的。

不要显示太多的页面。超过10个点是很难计算的,而且超过20个开放页面是非常耗时的。如果你的应用程序需要显示超过20页的页面,可以考虑使用不同的排列——比如网格——来实现非顺序导航。

在屏幕底部的中心页面控件。页面控件应该始终位于内容的底部和屏幕的底部之间。这使它保持可见,而不阻塞内容。


选择器

一个选择器包含一个或多个不同值的可滚动列表,每个列表都有一个选中的值——出现在视图中心的深色文本中。当用户编辑字段或点击菜单时,选择器通常显示在屏幕底部或弹出窗口中。选择器也可以以内联方式显示,比如在日历事件中编辑日期。选择器的高度大约是5行列表值的高度。根据设备和上下文,选择器的宽度可以是屏幕的宽度,也可以是包围的视图。

使用可预测和逻辑有序的值。当可滚动列表是静止的时,选择器中的许多值可能会被隐藏。当人们能够预测出这些值是什么时候,就最好了,比如按照字母排序的国家列表,这样他们就可以快速地浏览列表。

避免切换屏幕显示一个拾音器。选择器在上下文中、下或靠近被编辑的字段显示时工作得很好。

使用表而不是大型值列表的选择器。在选择器中导航冗长的列表可能很乏味。一个桌子有可调的高度,可以包括一个索引,使滚动更快。

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


日期选择器

日期选择器是选择特定日期、时间或两者的有效接口。它还提供了显示倒计时计时器的界面。

日期选择器有四种模式,每个模式都呈现不同的可选值集。

日期。显示月份、月份、年份。

时间。显示小时、分钟和(可选的)AM/PM指定。

日期和时间。显示日期、小时、分钟以及(可选地)上午/下午的指示。

倒数计时器。显示时间和分钟,最多23小时59分钟。

日期选择器中显示的确切值及其顺序取决于用户的语言环境。

考虑在指定分钟时提供更小的粒度。默认情况下,分钟列表包含60个值(0到59)。您可以选择增加分钟间隔,只要它平均分为60个。例如,您可能需要1 / 4小时的间隔(0,15,30和45)。


进度指标

不要让人们坐在那里盯着静态屏幕,等待你的应用加载内容或执行冗长的数据处理操作。使用活动指示器和进度条,让人们知道你的应用程序没有停滞,并让他们知道他们将等待多久。

也看到加载。

活动指标

当执行不可量化的任务(如加载或同步复杂数据)时,活动指示器旋转。任务完成后,它就消失了。活动指标非交互的。

喜欢进度条而不是活动指标。如果活动是可量化的,那么使用进度条而不是活动指示器,这样人们就可以更好地评估正在发生的事情和将要花费的时间。

保持活动指标移动。人们把静止的活动指示器和停滞的过程联系起来。保持旋转,让他们知道发生了什么。

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

进度条

进度条包括一个从左到右填充的跟踪,以显示任务的进度和已知的持续时间。进度条是非交互式的,尽管它们通常伴随着一个按钮来取消相应的操作。

总是准确报告进展。不要仅仅为了让你的应用显得忙碌而显示不准确的进度信息。只对可量化的任务使用进度条。否则,使用活动指示器。

对于定义良好的持续时间的任务使用进度条。进度条可以很好地显示任务的状态,特别是当它有助于传达任务需要完成的时间。

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

考虑定制一个进度条的外观来匹配你的应用程序。一个进度条的外观可以调整以匹配你的应用程序的设计。例如,您可以为跟踪和填充指定自定义色调或图像。

网络活动指标

除了iPhone X以外,所有设备都有一个网络活动指示器,当联网发生时,它会在屏幕顶部的状态栏中旋转。当人脉关系完成时,它就消失了。这个指示器看起来就像一个活动指示器,是非交互式的。

仅对持续时间超过几秒的网络操作显示此指示器。不要显示用于快速网络操作的指示器,因为它很可能在任何人注意到它的存在或意识到它意味着什么之前就消失了。

也看到状态栏。有关开发人员指南,请参阅UIApplication的networkActivityIndicatorVisible方法。


刷新内容控件

刷新控件被手动启动,以立即重新加载内容(通常在表视图中),而无需等待下一次自动内容更新的发生。refresh控件是一种特殊类型的活动指示符,默认情况下隐藏,在拖拽要重新加载的视图时变得可见。例如,在Mail中,您可以拖拽收件箱消息列表以检查新消息。

执行自动内容更新。尽管人们喜欢能够立即触发内容刷新,但他们也希望自动刷新定期发生。不要让用户为每次更新负责。定期更新数据,保持数据的新鲜度。

提供一个短标题,只有当它增加价值。可选地,刷新控件可以包含标题。在大多数情况下,这是不必要的,因为控件的动画显示内容正在加载。如果包含一个标题,不要用它来解释如何执行刷新。相反,提供关于要刷新的内容的有价值的信息。例如,podcast中的refresh控件使用标题告诉人们最后一次播客更新发生的时间。


分段控制

分段控件是由两个或多个分段组成的线性集合,每个分段作为互斥的按钮。在控件中,所有段的宽度都是相等的。像按钮一样,片段可以包含文本或图像。分段控件通常用于显示不同的视图。例如,在Maps中,分段控件允许您在Map、Transit和Satellite视图之间进行切换。

限制段的数量以提高可用性。更宽的部分更容易被利用。在iPhone上,分段控件应该有5个或更少的段。

尽量保持段内容大小一致。因为所有的段都有相同的宽度,所以如果内容填充了一些段,而不是其他段,看起来就不太好了。

避免在分段控制中混合文本和图像。虽然单个片段可以包含文本或图像,但在一个控件中混合这两个片段可能会导致一个断开连接的、混乱的界面。

在自定义分段控件中适当地定位内容。如果您更改分段控件的背景外观,请确保内容看起来仍然良好,并且不会出现不一致。


滑块

滑动条是一种水平的轨迹,带有一个叫做拇指的控件,你可以用手指在最小值和最大值之间滑动,比如屏幕亮度级别或媒体播放期间的位置。当滑块的值改变时,最小值和拇指之间的轨迹部分就会被填充上颜色。滑块可以选择显示左右图标,说明最小值和最大值的含义。

如果滑动条增加了价值,请自定义它的外观。滑块的外观,包括跟踪颜色、拇指图像和左右图标,可以调整,以与应用程序的设计和交流意图相融合。例如,一个调整图像大小的滑块可以在左边显示一个小的图像图标,在右边显示一个大的图像图标。

不要使用滑块来调整音量。如果您需要在您的应用程序中提供音量控制,请使用一个可自定义的卷视图,它包含一个音量级别的滑块和一个用于更改活动音频输出设备的控件。要了解如何实现卷视图,请参阅MPVolumeView。


步进

步进器是用于增加或减少增量值的两段控制。默认情况下,步进器的一段显示加号,另一段显示减号。如果需要,可以用定制图像替换这些符号。

使步进器影响的值变得明显。步进器本身不会显示任何值,所以当使用步进器时,确保人们知道它们正在改变的值。

当有可能发生大的价值变化时,不要使用步进。步进器可以很好地进行小的更改,这需要一些轻击。例如,在一个打印屏幕上,使用步进器来设置拷贝数是有意义的,因为人们很少更改这个设置。另一方面,使用步进器选择页面范围是没有意义的,因为即使是合理的页面范围也需要大量的点击。


开关

开关是在两个相互排斥的状态之间的视觉切换。

考虑调整开关的外观以匹配你的应用程序的风格。如果它在你的应用程序中运行良好,可以在开关的开/关状态中改变开关的颜色,或者使用自定义图像来表示开关。

仅在表行中使用交换机。如果你在工具栏或导航栏中需要类似的功能,你可以使用一个按钮,并提供两个不同的图标来交流状态。

避免添加标签来描述开关的值。开关要么是开着的,要么是关着的。提供描述这些状态的标签是多余的,会使接口混乱。

考虑使用开关来管理相关接口元素的可用性。开关通常会影响屏幕上的其他内容。例如,在设置中启用飞机模式切换,将禁用某些其他设置,如蜂窝网络和个人热点。在设置>中禁用Wi-Fi开关会导致可用网络和其他选项消失。


文本字段

文本字段是一个单线、固定高度的字段,通常带有圆角,当用户轻击它时,它会自动弹出一个键盘。使用文本字段请求少量信息,如电子邮件地址。

在文本框中显示提示,以帮助交流目的。文本字段可以包含占位符文本,如“Email”或“Password”——当字段中没有其他文本时。当占位符文本足够时,不要使用单独的标签来描述文本字段。

适当时,在文本字段的右端显示一个清晰的按钮。当这个元素出现时,点击它将清除文本字段的内容,从而消除了继续点击Delete键的需要。

在适当的时候使用安全的文本字段。当应用程序请求敏感数据(如密码)时,请始终使用安全的文本字段。

使用图像和按钮在文本字段中提供清晰和功能。可以在文本字段的左边或右边显示自定义图像,也可以添加系统提供的按钮,如书签按钮。一般来说,使用文本字段的左端来表示字段的目的和正确的结尾,以表示其他特性的存在,比如书签。

键盘

显示适当的键盘类型。iOS提供了几种不同的键盘类型,每一种设计都是为了方便不同类型的输入。为了简化数据输入,在编辑文本字段时显示的键盘应该适合于字段中的内容类型。例如,如果你的应用程序需要一个电子邮件地址,它应该会显示电子邮件地址键盘。有关可用键盘类型的完整列表,请参见UITextInputTraits的UIKeyboardType常量。


小清新色块标题

动作表

操作表是响应控件或操作而出现的一种特定的警报样式,并提供与当前上下文相关的一组或多个选项。使用操作表让人们启动任务,或者在执行可能具有破坏性的操作之前请求确认。在较小的屏幕上,一个动作表单从屏幕底部滑出。在较大的屏幕上,一个动作表单会立即显示为弹出窗口。

提供一个取消按钮,如果它增加了清晰度。当用户正在放弃一个任务时,“取消”按钮会给用户带来信心。取消按钮应该始终包含在屏幕底部的操作表中。

做出破坏性的选择突出。对执行破坏性或危险操作的按钮使用红色,并将这些按钮显示在操作表的顶部。

避免在操作表中启用滚动。如果动作表单有太多选项,人们必须滚动查看所有选项。滚动需要额外的时间来做出选择,而且要做到这一点,难免会不经意地点击一个按钮。


活动视图

活动是在当前上下文中有用的任务,如复制、收藏或查找。一旦启动,一个活动可以立即执行任务,或者在继续之前要求更多的信息。活动是由活动视图管理的,根据设备和方向,活动视图以表或弹窗的形式出现。使用活动让人们能够访问你的应用可以执行的定制服务或任务。

系统提供了许多内置的活动,包括打印、消息和播放。这些任务总是首先出现在活动视图中,不能重新排序。您不需要创建执行这些内置任务的自定义活动。活动视图还显示来自其他应用程序的共享和操作扩展。看到共享和行动。

设计简单的模板图像来表示您的定制活动。模板映像使用掩码创建图标。使用黑色和白色,有适当的透明度和抗锯齿,不包括投影。模板图像应该集中在一个区域测量约70 px×70 px。

简洁地描述你的任务的活动标题。标题出现在活动视图的图标下面。短标题效果最好。当标题太长时,iOS首先会缩小文本,如果标题太长,则会截断文本。通常,避免在标题中包含公司或产品名称。

确保活动适合当前上下文。虽然系统提供的任务不能在活动中被重新排序,但如果它们不适用于您的应用程序,则它们可以被排除。例如,为了防止人们打印图像,您可以排除打印活动。您还可以确定在任何给定的时间显示哪些自定义任务。

使用动作按钮显示活动视图。人们习惯于在点击操作按钮时访问系统提供的活动。通过提供另一种方法来做同样的事情,避免让人迷惑。


警报

警报传达与你的应用程序或设备状态相关的重要信息,并经常请求反馈。警报由标题、可选消息、一个或多个按钮以及用于收集输入的可选文本字段组成。除了这些可配置元素之外,警报的视觉外观是静态的,不能定制。

减少警报。警报会破坏用户体验,应该只在重要的情况下使用,如确认购买和破坏性操作(如删除),或通知人们问题。警报的频率不高有助于确保人们认真对待它们。确保每个警报都提供关键信息和有用的选择。

在两个方向测试警报的外观。在横向模式和纵向模式下,警报可能会出现不同的显示。优化警告文本,使它在任何方向上都能读得很好,而不需要滚动。

有关开发人员指南,请参见UIAlertController。

警报消息标题和

写简短、描述性、多字警告标题。人们在屏幕上阅读的文本越少越好。尽量设计一个标题,避免添加额外的文本作为消息。因为单字标题很少提供有用的信息,所以可以考虑问问题或使用短句。只要可能,将标题保留在一行中。在完整的句子中使用句子大小写和适当的标点符号。不要在句子片段中使用标点符号。

如果你必须提供信息,写简短完整的句子。尽量保持消息足够短,以适合一两行,以防止滚动。使用句子大小写和适当的标点符号。

避免听起来像是控诉,审判,或侮辱。人们知道警报会通知他们问题和危险的情况。只要你使用友好的语气,最好是消极和直接,而不是正面和间接。避免使用像你、你、我和我这样的代词,这些代词有时会被理解为侮辱或傲慢。

避免解释警报按钮。如果您的警告文本和按钮标题是清晰的,应该不需要解释按钮的作用。在极少数情况下,您必须提供指导,使用“tap”一词,在引用按钮时保持大小写,并且不将按钮标题括在引号中。

警报按钮

一般来说,使用双扣警报。双按钮警报提供了两个选项之间的简单选择。单按钮警报通知,但不给予控制的情况。带有三个或多个按钮的警报会造成复杂性,可能需要滚动,这是一种糟糕的用户体验。如果您发现您需要两个以上的选择,可以考虑使用一个动作表单。看到行动表。

给提醒按钮简洁,逻辑标题。最好的按钮标题由一个或两个单词组成,它们描述了选择按钮的结果。和所有按钮标题一样,使用标题式大小写,不使用结尾标点。尽可能使用与警告标题和消息直接相关的动词和动词短语——例如,查看All、Reply或Ignore。使用OK进行简单的验收。避免使用“是”和“否”。

把按钮放在人们期望的地方。一般来说,人们最喜欢点击的按钮应该在右边。取消按钮应该总是在左边。

适当的标签取消按钮。取消警报动作的按钮应该始终标记为Cancel。

识别破坏性的按钮。如果警报按钮导致破坏性操作(如删除内容),则将按钮的样式设置为破坏性,以便系统获得适当的格式。有关开发人员指导,请参见uialertactionstyledestruction constant of UIAlertAction。此外,提供一个取消按钮,让人们可以安全地选择退出破坏性行动。通过将取消按钮标记为默认按钮使其加粗。

允许人们通过退出到主屏幕来取消警报。当一个警报出现时,进入主屏幕时,该应用程序就会出现。它也会产生与点击取消按钮相同的效果,即警告被解除,而不执行任何操作。如果您的警报没有取消按钮,请考虑在代码中实现取消操作,当有人退出您的应用程序时,该操作将运行。


集合

集合管理一组有序的内容,如一组照片,并以可定制的、高度可视化的布局呈现它。因为集合不强制严格的线性格式,所以特别适合显示大小不同的项。一般来说,集合是展示基于图像的内容的理想选择。背景和其他装饰视图可以选择性地实现,以在视觉上区分项目的子集。

集合支持交互性和动画性。默认情况下,你可以点击选择,触摸和保持编辑,滑动到滚动。如果你的应用需要它,可以添加更多的手势来执行定制动作。在集合中,可以在插入、删除或重新排序项目时启用动画,还支持自定义动画。

当标准行或网格布局足够时,避免创建激进的新设计。收藏应该增强用户体验,而不是成为关注的中心。使选择一个项目更容易。如果在你的收藏中很难找到一件东西,人们在找到他们想要的内容之前会感到沮丧和失去兴趣。在内容周围使用适当的填充以保持布局的整洁,防止内容的重叠。

考虑使用表而不是文本集合。在可滚动列表中显示文本信息时,查看和消化文本信息通常更简单、更有效。

在进行动态布局更改时要谨慎。集合的布局可以随时更改。如果您在人们查看并与之交互时动态地更改布局,请确保更改是合理的,并且易于跟踪。没有动机的布局变化会让你的应用程序看起来不可预测,难以使用。如果由于布局的改变而丢失了上下文,人们可能会觉得他们不再能够控制。


形象的观点

图像视图在透明或不透明的背景上显示单个图像或动画图像序列。在图像视图中,图像可以拉伸、缩放、大小以适合或固定到特定位置。默认情况下,图像视图是非交互式的。

如果可能的话,确保动画序列中的所有图像都是一致大小的。理想情况下,应该对图像进行预缩放以适应视图,这样系统就不需要进行任何缩放。如果系统必须执行缩放操作,那么当所有图像大小和形状相同时,最容易实现所需的结果。

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

请注意

被配置为模板图像的图像会丢弃其颜色,并采用应用于封闭图像视图的任何色调。看到自定义图标。有关开发人员指南,请参阅UIImageRenderingModeAlwaysTemplate。


地图

地图视图可以让你在你的应用程序中显示地理数据,并支持内置地图应用程序提供的大部分功能。地图视图可以配置为显示标准地图,卫星图像,或者两者兼有。它可以包括引脚和覆盖,支持缩放和平移。如果您的应用程序支持路由,例如在运行跟踪应用程序中,您可以使用map视图来显示路由。

一般来说,保持地图的互动性。人们习惯于使用手势与地图应用程序交互,并期望能够以类似的方式与地图交互。

使用预期销的颜色。在你的地图上,一个大头针标示出你的兴趣点。人们对地图应用程序中的标准大头针颜色很熟悉,避免在应用程序中重新定义这些颜色的含义。


页面

页面视图控制器提供了一种实现内容页之间的线性导航的方法,比如文档、书籍、记事本或日历。页面视图控制器使用两种样式中的一种来管理在导航滚动或页面旋回期间页面之间的转换。滚动转换没有特定的外观;页面流畅地从一个页面滚动到另一个页面。当你在屏幕上滑动时,一个页面卷曲转换会导致页面卷曲,就像纸质书中的页面一样。

如果合适的话,实现一种非线性导航的方法。当使用页面视图控制器时,页面按顺序流动,并且无法在不相邻的页面之间跳转。如果人们可能需要按顺序访问应用程序中的页面,请实现提供此功能的自定义控件。


弹窗

弹窗是一个短暂的视图,当你点击一个控件或一个区域时,它会出现在屏幕上的其他内容之上。通常,弹出窗口包括指向其出现位置的箭头。弹窗可以是非模态的也可以是模态的。通过点击屏幕上的另一个部分或弹出窗口中的一个按钮,非模态弹出窗口就会被删除。模态弹出窗口通过点击弹出窗口上的取消或其他按钮来取消。

弹窗最适合在较大的屏幕上,可以包含各种元素,包括导航条、工具条、选项卡条、表、集合、图像、地图和自定义视图。当弹出窗口可见时,通常会禁用与其他视图的交互,直到弹出窗口被关闭。使用弹出窗口显示与屏幕内容相关的选项或信息。例如,许多iPad应用程序在点击操作按钮时都会弹出分享选项。

避免在iphone上显示弹出窗口。通常,弹窗应该预留给iPad应用程序使用。在iPhone应用程序中,利用所有可用的屏幕空间,在全屏模式视图中显示信息,而不是在弹出窗口中。有关指导,请参阅模式。

使用关闭按钮进行确认和指导。关闭按钮,如Cancel或Done,如果它提供了清晰性(如带或不保存更改退出),则值得包含进来。通常,弹出窗口在不需要时应该自动关闭。在大多数情况下,弹出窗口应该在有人在其边界之外点击或选择弹出窗口中的项目时关闭。如果可以进行多个选择,弹出窗口应该保持打开状态,直到有人显式地取消它或在其边界之外单击。

当自动关闭非模态弹窗时,总是保存工作。通过点击屏幕的另一部分,很容易在无意中忽略非模态弹出窗口。只有当有人点击一个显式的取消按钮时,放弃工作。

屏幕上适当位置弹窗。弹窗的箭头应该尽可能直接指向显示它的元素。因为弹出窗口不能被拖拽到屏幕上,弹出窗口不应该覆盖人们在使用弹出窗口时需要看到的基本内容。弹窗也不应该覆盖用于显示弹窗的元素。

每次显示一个弹出窗口。显示多个弹窗会造成界面混乱,造成混乱。永远不要显示一个级联或弹出窗口的层次结构,其中一个弹出窗口从另一个弹出。如果需要显示一个新的弹窗,请先关闭打开的弹窗。

不要在弹出窗口显示另一个视图。除了警告之外,弹出窗口顶部不应该显示任何内容。

如果可能的话,让用户关闭一个弹窗,然后用一个轻击打开另一个弹窗。当几个不同的按钮打开一个弹窗时,避免额外的轻击是特别可取的。

避免弹出窗口太大。弹窗不应该占据整个屏幕。只让它足够大来显示它的内容并指向它来自的地方。请注意,系统可能会调整弹窗的大小,以确保它能很好地在屏幕上显示。

确保自定义弹窗看起来像弹窗。虽然您可以定制弹窗的许多视觉方面,但是避免创建人们可能不认识的设计弹窗。当弹窗包含标准控件和视图时,弹窗的工作效果最好。

当改变弹窗的大小时,提供一个平滑的过渡。有些弹出窗口提供了相同信息的压缩和扩展视图。如果您调整弹窗的大小,使更改具有动画效果,以避免给人留下新弹窗取代旧弹窗的印象。

有关开发人员指南,请参见UIPopoverPresentationController。


滚动视图

滚动视图允许用户浏览内容,比如文档中的文本或图像集合,这比可见区域要大。当人们滑动、轻击、拖动、轻击和缩放时,滚动视图会跟随这个手势,以一种自然的方式显示或缩放内容。滚动视图本身没有外观,但是当人们与它交互时,它会显示暂时的滚动指示器。滚动视图也可以配置为在分页模式下运行,其中滚动显示一个全新的内容页面,而不是在当前页面上移动。

支持缩放行为得体。如果它在你的应用中有意义,让人们捏或双击来放大或缩小。启用缩放时,设置有意义的最大和最小缩放值。例如,放大文本直到一个字符填满屏幕在大多数应用程序中可能没有意义。

考虑在滚动视图处于分页模式时显示页面控件元素。页面控件显示可用的页面、屏幕或其他内容块的数量,并指示当前可见的内容块。如果使用滚动视图显示页面控件,请禁用同一轴上的滚动指示器,以避免混淆。有关其他指导,请参见页面控件。

不要在另一个滚动视图中放置滚动视图。这样做会造成难以预料的界面,难以控制。

通常,一次显示一个滚动视图。人们在滚动时通常会做出大的滑动手势,而且很难避免与同一屏幕上的相邻滚动视图进行交互。如果需要在一个屏幕上放置两个滚动视图,请考虑允许它们以不同的方向滚动,这样一个手势就不太可能影响两个视图。例如,当iPhone处于竖屏状态时,股票应用程序会显示在横向滚动的公司特定信息上方垂直滚动的股票报价。


分裂的视图

分屏视图管理内容的两个并排窗格的表示,主窗格中的内容是持久的,次要窗格中的相关信息是相关的。每个窗格都可以包含各种元素,包括导航条、工具条、选项卡条、表、集合、图像、地图和自定义视图。分割视图通常用于过滤内容;在主窗格中出现一个筛选类别列表,所选类别的筛选结果显示在副窗格中。如果您的应用程序需要它,主窗格可以覆盖副窗格,在不使用时可以隐藏在屏幕之外。当设备处于竖向位置时,这是特别有用的,因为它允许在副窗格中显示更多的内容。

选择一个适合你的内容的分割视图布局。默认情况下,分屏视图将屏幕的三分之一用于主窗格,三分之二用于次窗格。屏幕也可以分成两半。根据你的内容选择一个合适的分割,确保窗格看起来不不不均衡。避免创建比主窗格更窄的副窗格。

持续突出显示主窗格中的活动选择。虽然辅助窗格的内容可以更改,但它应该始终对应于主窗格中明显可识别的选择。这有助于人们理解窗格之间的关系。

通常,将导航限制在分割视图的一侧。在分割视图的两个窗格中放置导航会使人们很难保持方向感并识别这两个窗格之间的关系。

提供多种方法来访问隐藏的主窗格。在主窗格可能在屏幕外的布局中,请确保提供一个按钮(通常在导航条中)来显示窗格。除非你的应用程序使用滑动手势来执行其他功能,否则用户也可以从屏幕侧面滑动来访问主窗格。


表将数据表示为一个滚动的、单列的行列表,这些行可以划分为节或组。使用一个表以列表的形式干净而有效地显示大量或少量的信息。一般来说,表对于基于文本的内容是理想的,并且通常作为一种导航方式出现在分割视图的一边,相关内容显示在另一边。见分歧的观点。

iOS实现了两种类型的表,普通表和分组表。

平原。可以将行分隔为带标记的部分,并可以沿着表的右边缘垂直显示可选索引。页眉可以出现在部分的第一个项目之前,页脚可以出现在最后一个项目之后。

分组。行显示在组中,组前可以有一个标题,后跟一个脚注。这种类型的表总是包含至少一个组,每个组总是包含至少一行。分组表不包含索引。

考虑表的宽度。薄的表会导致截断和包装,使它们很难在远处快速读取和扫描。宽表也很难读和扫描,而且会从内容中占用空间。

开始快速显示表内容。不要等到大量的表内容加载后才显示内容。立即用文本数据填充屏幕上的行,并显示更复杂的数据(如图像)。这种技术可以立即为人们提供有用的信息,并提高应用程序的感知响应能力。在某些情况下,在新数据到来之前,显示陈旧的旧数据可能是有意义的。

以内容加载的方式交流进度。如果一个表的数据需要时间来加载,请显示一个进度条或旋转活动指示器,以确保您的应用程序仍在运行。

保持新鲜的内容。考虑定期更新表的内容以反映更新的数据。只是不要改变滚动的位置。相反,将内容添加到表的开头或结尾,让人们在准备好时滚动到它。一些应用程序会在添加新数据时显示一个指示器,并提供一个可以直接跳转到它的控件。包含一个refresh控件也是一个好主意,这样人们可以随时手动执行更新。看到刷新内容控件。

避免将索引与包含右对齐元素的表行组合在一起。索引通过执行大的滑动手势来控制。如果附近有其他交互元素,例如信息披露指示器,当出现一个手势时,可能很难识别用户的意图,而错误的元素可能被激活。

表行

您可以使用标准的表单元格样式来定义内容如何在表行中显示。

基本的(默认)。左边是可选的图像,后面是左对齐的标题。对于显示不需要补充信息的项目,这是一个很好的选择。对于开发人员的指导,请参见UITableViewCellStyleDefault常量的UITableViewCell。

副标题。一个左对齐的标题和一个左对齐的副标题。在行在视觉上类似的表中,这种样式很有效。附加的副标题有助于区分不同的行。对于开发者指南,请参见UITableViewCell的UITableViewCellStyleSubtitle常量。

所有标准的表格单元格样式都允许图形元素,如复选标记或披露指示器。当然,添加这些元素会减少标题和字幕的可用空间。

保持文本简洁,避免剪切。截短的词和短语很难扫描和破译。文本截断在所有表格单元格中都是自动的,但它可以根据您使用的单元格样式和截断发生的位置来呈现出更多或更少的问题。

考虑为删除按钮使用自定义标题。如果一行支持删除,并且有助于提供清晰性,则使用自定义标题替换系统提供的删除标题。

在做出选择时提供反馈。人们希望一行在其内容被点击时能简短地突出显示。然后,人们希望出现一个新的视图或发生一些更改,比如出现一个复选框,表明已经进行了选择。

为非标准表行设计自定义表单元格样式。标准样式适用于各种常见场景,但有些内容或整个应用程序设计可能需要一个高度定制的表外观。要了解如何创建自己的单元格,请参阅iOS的表视图编程指南中的自定义单元格。


文本视图

文本视图显示多行、样式化的文本内容。文本视图可以是任何高度,并且当内容扩展到视图之外时可以滚动。默认情况下,文本视图中的内容是左对齐的,并使用黑色的系统字体。如果文本视图是可编辑的,那么当您在视图中单击时,将出现一个键盘。

保留文本可读性。尽管您可以创造性地使用多种字体、颜色和对齐方式,但是保持内容的可读性是非常重要的。采用动态类型是一个好主意,如果人们改变设备上的文本大小,你的文本仍然看起来不错。您还应该测试您的内容是否具有可访问性选项,如粗体文本。

显示适当的键盘类型。iOS提供了几种不同的键盘类型,每一种设计都是为了方便不同类型的输入。为了简化数据输入,在编辑文本视图时显示的键盘应该适合字段中的内容类型。有关可用键盘类型的完整列表,请参见UITextInputTraits的UIKeyboardType常量。


Web视图

web视图直接在应用程序中加载和显示丰富的web内容,比如嵌入的HTML和网站。

在适当的时候启用前后导航。Web视图支持前后导航,但默认情况下禁用此行为。如果人们将使用您的web视图访问多个页面,那么启用前向和后向导航,并提供相应的控件来启动这些特性。

view来构建web浏览器。使用web view让人们在不离开应用程序上下文的情况下简单地访问一个网站是可以的,但Safari是人们在iOS上浏览web的主要方式。尝试在应用程序中复制Safari的功能是不必要的,也是不鼓励的。





点击阅读原文查看官网英文版






长按,识别二维码,加关注