手势操作

手势操作允许用户通过摆弄所提供的屏幕对象来与应用程序交互。下面展示了 Android 所支持的核心手势操作集。

触摸(Touch)

触发所选对象的默认功能。

动作:按下(Press)、放开(Lift)

长按(Long press)

进入数据选择模式。允许你选择一个视图中的若干个项目并通过上下文相关操作栏(contextual action bar)对数据进行操作。尽可能避免通过长按来显示上下文菜单(contextual menu)。

动作:按下、等待(保持,Wait)、放开

滑动(Swipe)

滚动那些无法在一个视图中完整显示的内容,或是在相同层级的视图之间切换。

动作:按下、移动(Move)、放开

拖动(Drag)

重新排列一个视图中的数据,或是将数据移入某一容器(例如文件夹或 Home 界面)中。

动作:长按、移动、放开

双击(Double touch)

缩放内容。也被用于文本选择的备用手势操作。

动作:快速连续双击屏幕

两点远离(Pinch Open)

放大局部内容。

动作:两指按下、反向移动、放开

两点靠近(Pinch close)

缩小当前内容并增加整体显示范围。

动作:两指按下、相向移动、放开

 

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

Android 4.0 中的新要素

导航栏

Android 4.0 通过使用包含了返回键(Back)、Home键和最近项目键(Recents)的虚拟导航栏来替代手机上传统的实体按键。请阅读“兼容性范式(英文/中译)”一文以了解有实体按键的手机和依赖菜单键的早期应用是如何被新版本的操作系统所支持的。

操作栏(Action bar)

操作栏是一个 Android 应用的最重要的结构性元素(structural element)。它提供了贯穿整个平台的导航功能并支持在你的应用中显示操作快捷方式。

多板块布局(Multi-pane layouts)

创建在不同条件和屏幕尺寸下都能自如缩放的应用对于 Android 开发来说是很重要的一点。多板块布局使你能够将不同的活动一起显示在平板设备的同一个视图上,而在小型设备上,这些活动则将被分开在不同视图中单独显示。

选择(Selection)

过去手势操作“长按”的作用是用于显示对象的上下文有关操作,而现在这一操作被用于数据选择。在选择数据时,将出现上下文有关的操作栏以供快捷操作。

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

语言风格

在为你的应用撰写文本内容时需要注意的几点:

  1. 保持简洁。要简明——简单并且准确。标题保持在30个字母之内(包括空格)【译注,这里是英文的情况,中文的话,十五个汉字以内为宜】,如非必要不要使用更多的字母。
  2. 保持简短。请假设你现在正在对一个聪明机灵但不明白那些专业术语甚至英语水平也不是特别好的用户说话。你需要使用简短的词语,主动形式的动词和常见名词。
  3. 用户友好。使用缩写。使用第二人称(“你”)直接和用户交谈。按照你平时的日常交谈中所使用的遣词措句来书写语句。不要使用粗鲁或惹人厌烦的语言,要让用户感觉安心、愉快且被鼓励。
  4. 在文首说明最重要的内容。最初的两个单词(包括空格约11个字母)【译注,同样是英文的情况。中文也须相应注意】应该至少包含了语句中最重要的信息的一部分。如果不是,请改写。
  5. 只写需要写的内容,不要写多余内容。不要对细微的差异作解释,大多数用户不关心这些问题。
  6. 避免重复。如果一个词在屏幕中或一段文本里明显重复出现,请想办法修改使其只出现一次。

范例

【译注,范例中的英文都比较简单,且需要注意的地方能与中文相通,就不做翻译了】

1.保持简洁。在启动向导中:

【过于正式的文字】

Consult the documentation that came with your phone for further instructions.

【改进版本】

Read the instructions that came with your phone.

2.保持简短。在地理位置设置中:

【容易使人困惑的文字】

Use GPS satellites
When locating, accurate to street level.

【改进版本】

GPS
Let apps use satellites to pinpoint your location.

3.用户友好。当程序崩溃时弹出的窗口:

【容易令人懊恼的版本——说“Sorry”只是伤口撒盐】

Sorry!
Activity MyAppActivity (in application MyApp) is not responding.
Force close Wait Report

【改进版本——简短而直接,不含缺乏诚意的道歉】

MyApp isn’t responding.
Do you want to close it?
Wait Report Close

4.首先说明重要信息

【把新情报置于了最后】

77 other people +1’d this, including Larry Page.

【改进版本】

Larry Page and 77 others +1’d this.

【把要做的任务写在了最后】

Touch Next to complete setup using a Wi-Fi connection.

【改进版本】

To finish setup using Wi-Fi, touch Next.

5.只描述需要的内容,不说多余的内容

【某个启动向导中的文字】

Signing in…
Your phone needs to communicate with
Google servers to sign in to your account.
This may take up to five minutes.

【改进版本】

Signing in…
Your phone is contacting Google.
This can take up to 5 minutes.

 

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。


图标设计(Icongraphy)

图标(icon)是占据一小块屏幕空间的图形,它提供了某一操作、状态或是一个应用程序的快速直观的表达。

应用程序启动器(launcher)

启动图标是你的应用程序在“主屏幕(Home)”或是“所有程序界面(All Apps)”中的视觉显示。因为用户可以改变主屏幕的壁纸,所以需要确保你的启动图标在任何类型的背景下都能被看清。

尺寸和缩放

移动设备上的启动图标尺寸必须为48×48 dp

显示在Google Play上的启动图标必须为512×512像素

比例

图标的完整尺寸为48dp

风格

使用容易区分的轮廓。三维、正视方向、如果是自上向下的话则添加一些透视效果,以使用户看得出深度。

操作栏(Action Bar)

操作栏图标是你的应用程序中最重要操作的图形按钮。每一个图标都应该使用简单的类比以让用户一下子就能理解其含义。

预定义的图标应当被用于例如“刷新”和“共享”等特定的常用操作。下面的下载链接提供了适合于不同屏幕密度以及Holo Light和Holo Dark主题的图标。该解压包中还包括了可以方便地修改以适应自定义主题的原型图标,以及可供深度自定义的Adobe® Illustrator®资源文件。

下载操作栏图标包

尺寸和缩放

手机上的操作栏图标应为32×32dp

中心区域与比例

完整尺寸为32×32dp

中心区域为24×24dp

风格

象形的、平面的、较少的细节,光滑弧线或是尖锐图形。如果图形很细,则左转或右转45度以填充整个中心区域。线条的粗细和线条间隔至少要为2dp。

色彩

色彩: #333333
启用: 60% 不透明度
禁用: 30% 不透明度

色彩: #FFFFFF
可用: 80% 不透明度
禁用: 30% 不透明度

小型图标/语境图标(contextual icon,即根据当前操作而变化的图标)

在你的程序里,对于表层操作(surface action)要使用小型图标且/或为条目提供状态图标。例如,在Gmail中,每一条消息都有一个星标用于将其标记为重要。

尺寸和缩放

小型图标应为16×16dp

中心区域和比例

完整尺寸为16×16dp。

中心区域为12×12dp。

风格

朴素、平面而简洁。实心图形比细框图形更容易看清。使用简单的视觉类比让用户可以简单地识别并理解其用途。

色彩

尽可能仅在需要时才使用艳丽的色彩。例如,Gmail用黄色的星形来表示被标记的消息。如果该图标是可以操作的话则采用和背景色对比强烈的色彩。

通知图标

如果你的应用程序会产生通知,则要在有新通知时提供一个系统可以用于显示在状态栏的图标。

尺寸和缩放

通知栏图标应为24×24dp

中心区域与比例

完整尺寸为24×24dp

中心区域为22×22dp

风格

使用平面而简洁的风格,并采用和启动图标相同的简单视觉类比。

色彩

通知图标必须是白色的。同时,系统可能会缩小且/或使图标变暗。

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

色彩

色彩主要用于强调。选择适合于你的界面的色彩以在不同的视觉元素间形成良好的对比效果。注意红色和绿色对于色盲用户来说可能是无法分辨的。

调色盘

蓝色是Android色彩盘中的标准色彩。每一种色彩都有对应的深色调版本,可以在需要时作为一种补充。

下载样板

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

活版印刷(Typography)

Android设计语言依靠例如缩放(scale)、间距(space)、变化(rhythm)和下网格对齐(alignment with an underlying grid)等传统的印刷排版工具。要让用户快速了解屏幕上的信息,对于这些工具的有效使用是很有必要的。为了支持印刷排版的这些功能,ICS引入了一种名为Roboto的新的字体族,它专为UI以及高分辨率屏幕设计。现有的TextView框架默认支持常规、粗体、斜体、和粗斜体等。

下载Roboto

样本手册

 

 

 

 

 

 

默认字体色彩
Android UI使用以下的默认色彩样式:textColorPrimarytextColorSecondary。亮色主题使用textColorPrimaryInversetextColorSecondaryInverse。当框架文本色彩样式在UI元素内部被使用时也支持用于触摸回馈状态的变体:

印刷缩放
文本尺寸的对比对设计出有条理而易于理解的布局很有帮助。不过,在同一UI中过多的不同尺寸也会造成混乱。Android框架使用以下尺寸集。

用户可以在设置中选择文本的系统级缩放因子。为了支持这一可读性功能,文本应该尽可能地使用sp这一缩放无关单位。要使用这些设定来测试所有支持缩放文本的布局。

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

公制和框格(grid)

设备不仅物理尺寸不同,屏幕密度(DPI,Dots Per Inch)也不相同。为了简化在不同屏幕时的设计,想象每一种设备都被分类放入指定的“尺寸桶”和“密度桶”中。“尺寸桶”分为手持设备(小于600dp)与平板设备(大于等于600dp)。“密度桶”分为LDPI(Low DPI,120)、MDPI(Medium DPI,160)、HDPI(High DPI,240)与XHDPI(Extra High DPI,320)。为不同“尺寸桶”设计不同的界面布局并为不同的“密度桶”提供不同的位图图片以优化程序的用户界面。

空间问题
设备能够显示的密度无关像素(density-independent pixel,dp)是不同的。
更多内容请参见“屏幕尺寸与密度”数据页面

48dp律

可触控的UI组件通常是48dp大小的。

为什么是48dp?
通常,48dp相当与物理尺寸的9mm(有时可能会有些差异)。这在可触控元素的推荐尺寸(7-10mm)之内,因此用户可以准确地用手指按下这些元素。

如果你将元素的长宽设计为48dp以上的话:

  • 无论在何种屏幕上你的元素都不可能会比最小推荐触控尺寸的7mm更小。
  • 你将在整体信息密度和界面元素的易触控性之间取得很好的平衡。

注意间距
给每个UI元素保留8dp的间距。

范例

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

触摸反馈

应当使用色彩与光亮来响应触摸操作,加强手势操作的行为结果,并且标识出那些操作是可用的,而哪些是不可用的。

当用户触摸你的程序中的某一可操作区域时,应当提供视觉反馈。这样能让用户知道他触摸到了哪一个部件,并且你的程序确实接收到了触摸。

状态

 

Android的大部分UI元素都内建了触摸反馈,包括了能够显示触摸该元素是否会产生效果的标识状态。

交流

当你的部件要对更为复杂的手势操作进行回应时,应当帮助用户理解该操作将会产生什么结果。例如,在“最近情况(Recents)”中,当你开始将一个图标向左或向右滑动时,该图标就会变得暗淡。这帮助用户理解滑动操作会是条目被移除。

边界

当用户的拖动操作超过了可滚动区域的上下界时,应当将该边界以一种视觉的方式提示给用户。例如,当用户要继续拖动屏幕至第一个主界面之前时,屏幕上的内容将会倾斜以表明不能继续进行这个方向的拖动。许多Android的可滚动UI部件(例如列表和格状列表)已经支持了内建的边界反馈。如果你要构建自定义的可滚动部件,应当也采用边界反馈。

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

 

主题

主题(theme)是Android在一个应用或活动(activity,即应用的一个部件)中实现一致风格的机制。该风格指定了在你的用户界面中使用的元素的视觉属性,例如色彩、亮度、间距和字体尺寸。为了令整个系统平台上所有的程序风格能更为协调,Android提供了三种系统主题,可以在构建Android ICS版本的应用时选用:

  • Holo Light(亮色版Holo)
  • Holo Dark(暗色版Holo)
  • Holo Light with dark action bars(使用暗色动作栏的亮色Holo)

采用这些主题对你构建程序将会大有帮助,能使你的程序和Android的视觉风格相符。

选用和你程序的需求以及设计美学相适合的系统主题。如果你希望程序有一个更为独特的外观,那么根据某一系统主题进行自定义修改是不错的主意。系统主题提供了一个你可以进行自定义风格选用的坚实基础。

Holo Light主题的Gmail

Holo Dark主题的系统设定界面

使用暗色动作栏的Holo Light主题的Talk

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。