在上一章,我们介绍了各种各样的Android手机的主要硬件配置,以及部分厂商应对个性化策略而为的手机平台界面定制情况。通过上一章,可以帮助了解你的应用程序在不同厂商的Android的手机下将如何工作。 本章,我们的焦点慢慢由手机的外部特征转入平台界面。将会讲到Android手机的几类交互模式,主要包含实体按钮、键盘、屏幕手势、视觉反馈、声音反馈、触感反馈、方向变化,以及状态栏通知。 实体按钮 实体按钮,也叫实体按键。不同厂商的排列顺序可能不同,处理方法也可能不同。 比如,有的把它做成轻触式的,以减轻手指按压力度: 上图nexus one这款手机,箭头所指的几个实体按钮,采用了轻触式的,你只需要轻轻触摸即可响应操作。 而HTC大部份的Android手机,对实体按钮的处理,普遍采用的是较为普通的按压式按钮: 你需要花小小的力气来按压这些实体按钮以响应操作。 以笔者的实际使用情况来看,以上两种按钮各有各的优缺点: 轻触式 优点:和屏幕按钮一样,省力、轻触即可,和屏幕按钮有一致的体验。 缺点:优点也可能带来缺点,轻触式也意味着你比较容易误操作。比如你正在与朋友玩即时对战游戏,手指不小心触碰到了主页键,你不得不叹气…… 按压式 优点:不容易误操作。 缺点:由于菜单键、返回键在界面中应用较为广泛,结合屏幕上的触摸操作,手指按压力度不和谐,直接影响触控体验。 还有一种,是比较少见的隐藏式按钮。在lephone、联想O1中有使用到。 所谓隐藏式,是指你看不到任何标识,在你需要时在指定位置轻击或滑动以响应指定操作。又或者只有在可用时才可见操作标识的处理方法。隐藏式的设计,在一定程度上是为了简约、美。不过,不可见性也给新手用户带来不少的认知负担。 标准配置 在所有Android平台的手机中,主页键、菜单键、返回键三个实体按钮是标准配置,也是必备的,所有Android手机你都能看到它们。搜索键以及轨迹球不属于标准配置。 下面是这些实体按钮的介绍: 1、主页键(又称小房子)——在所有界面,按下此按键均回到Android平台的主屏幕,或称桌面。由于Android可执行多任务,因此通过主页键快速回到主屏幕,你之前使用的应用程序将会在后台保持,直到后台程序过多时,内存释放被退出。 2、菜单键(menu)——按下菜单键用于呼出选项菜单,以选择更多的操作。通常选项菜单的操作项不是常用的、必用的。如果某个界面不需要选项菜单,菜单键按下将不响应。 3、返回键(又称后退键)——在所有界面,按下返回键将返回上一界面,或取消正在显示的对话框。 4、搜索键(放大镜图标)——在Android主屏幕,按下搜索键将搜索整个手机,包括应用程序名称、联系人、浏览器书签…… 在具体的界面中,搜索键用于执行应用程序或界面相关的搜索,比如在Gmail收件箱,按下搜索键,可以搜索邮件。如果你的应用程序不需要,或没有搜索功能,按下此按键将不响应。 5、轨迹球——你可以聚焦按钮后按下轨迹球来执行操作,也可以聚焦条目后长按来打开上下文菜单。更多的情况,我们用它来移动焦点而已。 键盘 Android的手机键盘,包含虚拟键盘(又称软键盘),和实体键盘两种。 虚拟键盘可以在不同的输入控件中灵活变通。(具体到不同输入法,输入面板有所不同,以下示例为Google拼音输入法) 比如,在输入邮件地址时,键盘上有@: 又比如,输入普通文本时: 再比如,在浏览器输入网址时的软键盘变化: 而实体键盘,同样是QWERTY,区别在于不同厂商的设计中,功能键的数量或布局可能有所不同。这里就不作介绍了。 屏幕手势 1、轻击:用于选择一个控件或条目(类似于鼠标的点击) 2、双击:快速放大或还原。比如在浏览网页或图片时,双击放大视图,再次双击还原。 3、拖动:滚动或平移块状对象。比如在查看地图时有此手势应用。 4、滑动:快速地滚动或平移。比如在查看图片集时,左右滑动可快速切换上一张或下一张图片。 5、捏或伸:用于设备有多点触摸支持时,放大或缩小。比如在查看地图、照片时有此手势应用。 6、长按:长按在Android平台属于较常用的手势,应用比较广泛。比如在列表视图中,长按列表项可弹出上下文菜单;在文本框中,长按弹出上下文菜单,提供复制/粘贴、输入法选择,等等。 视觉反馈 比如,光标在输入框时,当前输入框被高亮显示。 又比如,在你轻击或长按了某对象后,它们会高亮一下。 …… 所有的界面交互元素,要能反映出4种不同的状态 (初始,禁用,聚焦,按下) 声音反馈 这一项功能,受限于用户手机是否启用声音。(用户可以在"设置"-"声音和显示"-"通知铃声",选择静音模式。选择静音模式后,除媒体、闹钟之外,所有声音均为静音) 如果确定声音能够加强你的应用程序的用户体验或者功能,或者对于这些方面来说至关重要,那么你就需要决定你的音频如何与设备的音频环境配合,如何对用户的行为反馈。 记住,无论你使用何种程序来创建声音,无论你怎样定义声音的行为,来电始终会打断目前正在运行的应用程序。不应该有任何应用程序可以阻止用户接听来电。 触感反馈 这一项功能,受限于用户手机是否启用触感反馈。(用户可以在"设置"-"声音和显示"-"触感反馈",选择关闭或启用) Android手机中,长按操作通常提供了触感反馈。当你长按某条目时,手机会轻轻振动一下,然后显示长按呼出的上下文菜单。对于这一个设计,笔者希望所有第三方应用程序均能保持一致,而不是有的应用程序长按条目时不提供触感反馈,甚至不提供视觉反馈。 另外,如果你的应用程序某个操作需要特别引起注意,也可以使用触感反馈。 方向变化 用户随时可能旋转他的Android手机,他们希望正在浏览的内容随之作出适当调整。 如果你的应用程序提供了方向变化,则应在所有界面都支持这一特性,而不是仅在某一些界面支持。 当然,如果你的应用程序大部分不支持方向变化,只有在特定的界面(比如播放全屏视频时),并且仅以特定方向显示,不响应设备方向的变化,这是合理的。 注意,方向变化最终在用户面前是否响应,和声音、触感一样,取决于用户终端的设置。(用户可以在"设置"-"声音和显示"-"方向",选择关闭方向变化) 状态栏通知 状态栏通知是一种后台通知服务,用于通知用户某一事件。 如果你需要提醒用户时,而用户正处于这个界面,则可以考虑使用其它提醒方式代替。 在状态栏出现通知时,可添加声效以加强。 当状态栏出现一个通知时,状态栏左侧会增加一个图标。(25px*25px、png格式) 向下滑动状态栏可像打开幕帘一样看到通知详情。