iPhone人机界面常见任务处理方法 (1)

移动开发 iOS
本文介绍的是iPhone人机界面常见任务处理方法,主要讲述了处理常见的人物,先来看内容。分为几个小节来介绍,请深入的去了解。

iPhone人机界面常见任务处理方法是本文要介绍的内容,如果您具有使用桌面计算机或便携式计算机应用程序的经验,那么您会发现iPhone应用程序处理很多常见任务的方式与它们不同。本节从人机界面的角度描述了这些常见任务;关于代码实现的技术细节,请参考iPhone应用程序编程指南。

启动

iPhone应用程序应能够迅速启动,从而用户可以立即开始使用它们。启动时,iPhone应用程序应该:

指定适当的状态栏样式(关于可用样式的信息请参考“状态栏”一节)。

显示一幅酷似应用程序初始屏幕的启动图像。这减少了用户感知到的应用程序的启动时间。要了解更多有关的信息,请参考“启动图像”。

避免显示“关于”窗口,启动画面,也不要提供任何其他类型的妨碍用户立即使用应用程序的体验。

默认情况下,在屏幕上纵向启动应用程序。如果您打算让应用程序只能在屏幕横向时使用,则无论设备当前的方向如何,都在屏幕上横向启动应用程序。如果必要的话,要允许用户将设备旋转为横向。

仅横向显示的应用程序应该支持两种“横向”—不论“主页”按钮在屏幕右侧还是左侧,都能够正常显示应用程序。如果设备本身已经被横向放置,则这种仅横向显示的应用程序就按照设备的方向启动。否则,在默认情况下,仅横向显示的应用程序在启动时,“主页”按钮只能在应用程序的右方。

将您的应用程序恢复到***一次运行时的状态。

重要:不要在您的应用程序安装完成后提示用户重新引导或重新启动他们的设备。如果您的应用程序存在内存使用或其他方面的问题,导致除非系统是刚刚启动过的,否则您的应用程序难以运行,那么您需要解决这些问题。例如,您可以阅读iPhone应用程序编程指南中的“高效地使用内存”一节,了解如何开发运转良好的应用程序。

停止

当用户打开另一个应用程序或使用设备自身功能(比如电话)时,iPhone应用程序必需终止。要特别注意的是,应用程序的终止不需要用户点击应用程序关闭按钮或在菜单上选择“退出”操作。iPhone应用程序应该:

随时准备接收退出或终止通知。因此,要尽可能快并且在合理情况下经常保存用户数据。

当应用程序终止时,尽可能详细地保存它的当前状态。例如,如果您的应用程序能够显示滚动的数据,则应该保存当前的滚动位置。

iPhone应用程序不应该直接通过代码退出,因为这样做会使用户觉得应用程序崩溃了。但是,可能有些时候,外部环境会阻止您的应用程序正常运行。处理这种情况的***方法是让屏幕显示醒目的内容,在屏幕上描述该问题并向用户提出解决问题的建议。这样做会在以下两方面对用户有所帮助:

它提供了反馈信息,告诉用户您的应用程序没有出现错误,使用户放心。

它能够控制用户行为,让他们决定是采取一些纠正的行动来继续使用您的应用程序,还是按下“主页”按钮来打开另一个应用程序。

如果在一些特定的环境中,您的应用程序只是部分功能无法正常工作,那么在用户想要激活该功能时,您可以在屏幕上显示信息或警告。虽然警告在设计上不具备太大的灵活性,但如果您可以保证以下几点,它也可以成为一种很好的选择:

非常简洁地描述当前情况

提供一个执行纠正动作的按钮

仅当用户试图访问无法正常工作的功能时显示警告

和所有的警告一样,用户越少看到它们,就说明它们越有效。关于创建警告的更多信息请参考“使用警告”。

管理设置或配置选项

iPhone应用程序可以向用户提供设置功能,使用户可以根据自己的喜好来设置应用程序行为或配置选项,从而改变应用程序的一些功能。可设置的应该是一些用户设置一次后很少(如果有的话)改变的信息,比如帐户名称。用户可以在内置的“设置”程序中查看特定应用程序的设置。配置选项是一些用户可能想要经常改变的值,比如在列表中显示的分类的类型;配置选项应该由应用程序本身提供。

您应该把设置和配置选项看作是互斥的。也就是说,您不应该在您的应用程序中同时提供设置和配置选项。

iPhone应用程序***不要求用户指定任何设置。这样用户无需提供设置信息就可以立即使用这些应用程序。为了在您的应用程序中实现这一点,您可以采用以下这些设计决策:

使您的解决方案满足80%用户的需求。当您采用这样的设计时,大多数用户不需要提供设置信息,因为您的应用程序已经按照大部分用户所预期的行为进行了设置。可以不考虑那些只有少数用户需要的功能和大部分用户仅需使用一次的功能。

从其他途径获取尽可能多的信息。如果您可以用到任何用户在内置应用程序或设备设置中提供的信息,那么您可以向操作系统查询这些信息的值;不要让用户再次输入它们。

如果您必须向用户请求设置信息,请在应用程序内部提示用户输入信息。然后立即将这一信息存储在您的应用程序的设置中。这样,用户在开始使用您的应用程序之前,就不会被迫退出应用程序而先打开“设置”界面。如果用户稍后需要更改这些信息,他们可以随时在您的应用程序的设置中进行更改。

如果用户想要打开“设置”程序,就必须首先退出您的应用程序,而您应该不鼓励用户采取这样的行为。系统并没有提供支持这一行为的图标或控件,而且建议您也不要为此创建自定义的图标或控件。如果您决定一定要在您的iPhone应用程序中提供设置,请参考iPhone应用程序编程指南中的“设置程序包”一节,了解如何在您的代码中实现对这些功能的支持。

注意:应用程序特定的设置不应该包括用户帮助的内容。

与设置不同,由于用户会选择从新资源或以不同布局来查看信息,因此配置选项很可能经常发生改变。对于这些选项所做的更改,您可以动态地作出响应,因为用户不需要离开您的应用程序来访问它们。

您可以在主用户界面屏幕的背面提供配置选项。具体使用哪一种技术更合理取决于该选项代表的是不是主要功能以及用户对其进行更改的频率。

例如,“日历”程序允许用户以日,星期和月为单位查看他们的时间表。这些选项本来可以在屏幕的背面提供给用户,但是查看日历的不同部分是程序的主要功能,并且用户可能会频繁改变所关注的焦点。

再举一个例子,“天气”程序的主要功能是显示一个城市的当前天气状况和6天之内的天气预报。虽然让用户能够选择是以摄氏还是华氏为单位显示温度也很重要,但是用户不太可能经常改变这个选项,因此,将它放在主用户界面中并不合理。在“天气”屏幕的背面提供温标选项,就显得既方便又不突兀。

支持复制和粘贴

iPhone OS提供了编辑(或粘贴板)菜单,它支持在文本视图,Web视图和图像视图中的“剪切”,“复制”,“粘贴”,“选择”和“全选”操作。一种向用户显示该菜单的方法是,首先用户触摸并按住设备屏幕直到出现放大的视图(该视图允许用户将插入点或选择点移动到正确的位置),然后放开。如果当前的上下文支持这种菜单,则当用户抬起手指时它就会出现。菜单中的“选择”操作可以选择视图中的单词或应用程序定义的项。用户可以通过拖动当前所选区域的把手来扩大他们选择的内容。在内容被选中之后,菜单就会根据情况显示“剪切”,“复制”或“粘贴”。

您可以调整编辑菜单的某些行为以适应您的应用程序。(要了解更多关于如何用编码实现这些行为的信息,请参考iPhone应用程序编程指南中的“复制和粘贴操作”一节。)例如,您可以指定菜单中显示的操作,您可以改变菜单出现的位置。但是,您不能控制菜单本身的颜色和形状。

编辑菜单中可见的操作在当前上下文都是有意义的。例如,如果没有任何内容被选中,菜单中不会包含“复制”或“剪切”操作,因为这些操作要作用于被选中的内容。同样,如果有内容被选中,菜单则不包含“选择”操作。如果您要在一个自定义视图中支持编辑菜单,您应该确保菜单所显示的操作适用于当前上下文。请注意,您不能在菜单中显示自定义的操作。

UIKit会根据可用空间的大小,在插入点或被选中内容的上方或下方显示编辑菜单,并放置菜单指针,以便用户可以看到菜单操作是如何与当前内容相关联的。您可以通过编程的方式,在菜单出现之前决定它的位置,因此,在必要的情况下,您可以防止应用程序的用户界面中的重要部分被菜单遮住。

请注意,虽然“触摸并按住”这个操作是向用户显示编辑菜单的主要方式,但是用户也可以通过双击文本视图中的一个单词来选中它,同时显示出菜单。如果您要在自定义视图中支持菜单,那么您应该对这两种操作都做出响应。此外,您可以定义在用户双击时默认被选中的对象。

如果一个按钮执行的是编辑菜单中已有的操作,则要避免创建这样的按钮。例如,要让用户执行复制操作的话,使用编辑菜单比向用户提供“复制”按钮更好,因为用户会很困惑,为什么在您的应用程序中要有两种方式来完成同样的事情。

您可以启用对静态文本的选择,但是应该仅当静态文本显示对用户有用的内容时才这样做。例如,用户有可能想要复制一幅图像的标题,但是他们可能不想复制一个标签项或屏幕标题的标签,比如“帐户”。在文本视图中,默认应该是按单词选取的。

按钮的标题应该是不可以被选中的,因为很难不触发按钮的点击事件并显示出编辑菜单。一般来说,具有按钮行为的元素不需要被选中。

如果您在自己的应用程序中支持“剪切”,“复制”和“粘贴”操作,您也应该支持撤销和重做(在“支持撤销和重做”介绍)。这是因为编辑菜单不需要在动作执行前进行确认,而且如果用户改变了主意,他们总是希望能够撤销最近的操作。

支持撤销和重做

iPhone OS在文本视图中为用户提供了撤销和重做的能力。用户通过摇晃设备发起撤销动作,设备会显示一个警告,允许用户撤销他们刚才的输入,重做先前未完成的输入或取消撤销操作。

UIKit允许您在自己的应用程序中以一种更通用的方式支持撤销(有关如何在代码中实现这一行为的信息,请参考撤销架构)。您可以指定:

用户可以撤销和重做的操作

您的应用程序应该何时将一个摇晃事件理解为触发撤销

支持多少层的撤销

为了给您的应用程序中的撤销和重做功能提供出色的用户体验,您应该:

提供简短的描述性的语言精确地向用户描述他们正在撤销或重做的内容。UIKit自动采用字符串“撤销”和“重做”作为撤销警告按钮的标题,但是您需要提供一至两个单词来描述用户可以撤销和重做的动作。(请注意,“取消”按钮不能被改变。)例如,您可以提供文本“删除姓名”或“地址变更”来创建如“撤销删除姓名”或“重做地址变更”这样的的按钮标题。

一定要避免提供过长的文本:过长的按钮标题会被截断,并且用户很难解读。此外,由于文本位于按钮的标题中,因此要使用标题式的大写方式,而且不要添加标点。(简单地说,标题式的大写方式是指每个单词都大写,但冠词,并列连词和四个或四个字母以下的介词除外。)

避免重载摇晃操作。即使您可以通过编程来制定您的应用程序何时将一个摇晃事件理解为触发撤销,但是如果摇晃可以用来执行另一个动作,用户会感到迷惑。

摇晃操作是用户期望的发起撤销和重做的主要方式,但是在适当情况下,您也可以在导航栏中包含系统提供的“撤销”和“重做”按钮。如果在您的应用程序环境中,明确地显示一个专用按钮来执行这些功能非常重要,则您可以采取这种做法,但这种情况很不常见。

考虑您允许撤销和重做的动作所处的环境。一般来说,用户希望他们所做的更改和执行的动作能够立即生效。撤销和重做功能应该尽可能明确地关联到用户当前所处的环境,而非先前的环境。

小结:iPhone人机界面常见任务处理方法 (1)的内容介绍完了,希望本文对你有所帮助!请深入了解以下几篇文章:

iPhone人机界面常见任务处理方法 (2)

iPhone人机界面常见任务处理方法 (3)

iPhone人机界面常见任务处理方法 (4)

责任编辑:zhaolei 来源: 博客园
相关推荐

2011-08-01 14:42:47

iPhone 应用程序 声音

2011-08-01 14:26:41

iPhone 应用程序 事件

2011-08-01 14:34:06

iPhone 声音 音频

2014-09-18 10:53:38

Apple Pay开发人机界面

2020-10-04 13:11:38

物联网工业4.0技术

2015-11-04 09:54:34

ios9人机界面ui

2016-03-14 10:33:15

应用苹果界面

2020-08-04 10:40:18

边缘AI人机界面HMI

2017-04-07 14:42:27

人机界面语音触觉

2021-10-28 11:16:26

AI 数据人工智能

2023-06-25 10:10:00

2011-08-11 10:39:46

诺基亚iPhoneAndroid

2021-10-29 10:50:41

技术资讯

2012-08-17 09:47:01

施耐德电气人机界面

2009-04-05 09:21:24

iphoneNokia移动OS

2010-01-26 13:28:11

Android开发要点

2019-04-02 09:00:00

机器人人工智能HMI设计

2021-10-26 15:15:00

苹果 iOS 15 iPadOS 15

2020-08-05 11:35:11

UI设计师iOS苹果

2013-03-22 14:27:52

iOSWin8UI设计
点赞
收藏

51CTO技术栈公众号