在拜读和翻译了 Android design 设计指导后,对比 Android 4.0 与 Android2.3 及之前版本的 app 设计指导,总结了 Android 4.0 设计的 10 大改变:

1. 导航栏 (详见模式 PATTERNS>导航 Navigation)

由之前的物理按键导航(返回、菜单、搜索、主页)变成了嵌入屏幕的虚拟按键(返回、主页、最近任务)。

左侧为早期有 4 个物理按键的手机,右侧为新版只有 3 个虚拟按钮的手机

把菜单项和搜索项从导航栏去掉,把之前通过长按主页键才出现的最近任务直接展示在导航栏中。

最近任务的界面

把菜单收起的同时,在软件界面的操作栏上增加了“更多操作”(action overflow),如下图中的黄色圆点所示。

黄色圈部分为“更多操作”(action overflow)的位置和点击后内容的展示方式

2. 操作栏 (详见模式 PATTERNS>操作栏 Action bar)

操作栏从之前的 app 图标+操作,变成如下图所示:

1向上+2 Spinner+3 重要操作+4 更多操作。

其中,向上按钮,点击后是去到当前界面的上一个层级,非第一层级界面有此按钮,第一层级界面则无向上按钮;Spinner 是用于展示内容的下拉菜单,其内容包括视图的快速切换和显示相关内容的完整信息;更多操作(action overflow)是集合操作栏中不常用的和非重要操作的地方。

操作栏可以拆分成下图中的 1 主操作栏、2顶部栏和 3 底部栏。如果需要,顶部栏可以承载选项卡 tabs,底部栏可以承载主要操作和被收起的更多操作(action overflow)。

在空间足够的横向屏幕展示界面时,被拆分的操作栏,可以灵活合并在一起。如下图中的手机端横竖屏操作栏所示。

3. 多面板布局 (详见模式 PATTERNS>多面板布局 Multi-pane layouts)

多面板布局更多的是针对平板电脑,把手机端的目录视图和详情视图两个层级的界面,甚至更多的页面,复合展示在同一个界面中,有效地利用平板电脑的屏幕空间,扁平化层级结构,简化导航。这点在 iPad 上已经运用得相当娴熟了。

4. 选择 (详见模式 PATTERNS>选择 Selection)

Android4.0中的长按与 Android2.3 及更早期的版本有很大的不同。早期版本长按操作后,是出现情境菜单的浮出层。在 Android4.0 中,长按后在操作栏的位置会覆盖一个临时的情境操作栏,不再弹出情境菜单浮出层。在临时情境操作栏的环境下,当前界面的内容项允许被单个处理,也允许被批 量处理。

长按 Android2.3 及更早期系统版本的内容项时,出现情境菜单的浮出层。

长按 Android4.0 系统版本的内容项时,情境菜单栏覆盖在操作栏上。

在情境菜单环境下,支持批量操作。

5. 返回和向上 (详见模式 PATTERNS>返回和向上 Navigation with Back and Up)

返回按键用在手机全局的虚拟导航栏中,基于用户最近查看的界面历史,采用时间倒序的方式,连接界面间的关系。向上按钮用在操作栏的左侧,基于层级结构,点击后是去到当前界面的上一个层级,若当前界面已经是最高一级,则没有向上按钮。

黄色部分为点击向上按钮后的页面路径,红色部分为点击返回按钮后的页面路径

6. 主题样式 (详见风格 STYLE>主题样式 Themes)

推出三套默认主题:Holo 浅色主题、Holo 深色主题、Holo 浅色底+深色操作栏主题。主推 app 在这三套默认主题的基础上做设计,以加快 app 研发效率,但只是建议使用,并没有完全强制。视觉设计师们可以重点看下 STYLE 和 BUILDING BLOCKS 这两章。

7. Widgets (详见开始吧 GET STARTED>UI 概览 UI Overview)

在原 apps 页里,用选项卡 tabs 的方式增加了 widgets 内容。一改用隐晦方式添加 widget 的操作和把 widgets 零散放在桌面呈现的方式。在 app 设计中,应该提高对 widget 设计的重视程度。

8. 兼容性 (详见模式 PATTERNS>兼容性 Compatibility)

向后兼容,考虑到物理导航按键手机如何兼容 Android 4.0 系统和虚拟导航手机如何兼容 Android2.3 和更早期版本的 apps。

在物理导航按键手机上安装 android4.0 系统,点击物理按键,在屏幕下方出现 action overflow 的内容。

在新的虚拟导航手机上安装为 android2.3 及更早版本系统设计的 app,会在屏幕下方的虚拟导航的右侧出现 action overflow 按钮(如上图的黄色部分)。

在新的虚拟导航手机上安装 android4.0,点击 action overflow 后的展示状态如上图。

9. 强调纯粹的 Android 应用设计 (详见模式 PATTERNS>纯粹的 Android)

在 Android4.0 app 设计准则中,特别强调为 Android 设计纯粹的 Android app,切勿使用其他平台特定元素的注意事项,有以下 5 个方面:

(1)强调视觉元素的样式要符合 android 系统;

(2)不用其它平台特有的图标;

(3)不在界面的下方使用选项卡 tabs;

(4)区分向上和返回,不在操作栏上使用返回样式的按钮;

(5)不在内容列表里使用向右箭头。

Android 系统里,选项卡(tabs)会固定放在屏幕上方,不会放在下方。这点与 ios 系统不同。

10. 其它细节

增加许多新的交互细节、信息展示和视觉样式等规范,详细见翻译。其中,有几点在此强调下:

(1)新增了横滑移除内容的交互手势。在部分模块中,支持向左或向右横滑移除内容的操作,如最近任务和消息通知抽屉。

(2)视觉的平面化,栅格风正在4.0中上演。

(3)在 writing style 中明确指出写 wording 时,要直接使用第二人称“你”。

原文见 http://developer.android.com/design/index.html

快速查阅,Android Design 全文翻译 下载地址:http://cdc.tencent.com/?download=Android-Design-4.0

Android Design 全文翻译由 CDC D3 多媒体小组(江宁、张云)出品。

Android 4.0设计规范 优先导读 十大改变的更多相关文章

  1. Android自定义View——仿滴滴出行十大司机评选活动说明

    滴滴出行原版图 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 仿图 ? ? ? ? ? ? 1.分 ...

  2. 使用Visual Studio进行 Android开发的十大理由

    [原文发表地址]Top 10 reasons to use Visual Studio for C++ Android Development! Visual Studio: C++跨平台的移动解决方 ...

  3. 有史来最大改变 Android 5.0十大新特性

    有史来最大改变 Android 5.0十大新特性 2014.10.16 14:51:31 来源:腾讯数码作者:腾讯数码 ( 0 条评论 )   距离Android系统上一次重大更新不到一年的时间,谷歌 ...

  4. Android 5.0(棒棒糖))十大新特性

    Android 5.0(棒棒糖))十大新特性 1. 全新Material Design设计风格 Android Lollipop全新的设计语言是受到了多种因素影响,是一种大胆的平面化创新.换句话说,谷 ...

  5. [Android 新特性] 有史来最大改变 Android 5.0十大新特性

    距离Android系统上一次重大更新不到一年的时间,谷歌再一次从KitKat升级到了Lollipop,而两次都使用糖果来命名,营销的目的显露无 遗.当我们首次看到Android 5.0 Lollipo ...

  6. Android 应用中十大常见 UX 错误 分类: H1_ANDROID 2013-09-21 13:59 404人阅读 评论(0) 收藏

    转载自:http://www.apkbus.com/android-5661-1.html 摘要: Android 开发者关系团队每天都会试用无数的 App 或者受到无数的开发者发来的请求评测的 Ap ...

  7. Android 应用中十大常见 UX 错误

    [核心提示] Android 开发者关系团队每天都会试用无数的 App 或者受到无数的开发者发来的请求评测的 App,在评测如此之多的应用之后,他们总结出了10个最常见的错误. 作为一个长期使用 An ...

  8. 十大免费移动程序测试框架(Android/iOS)

    十大免费移动程序测试框架(Android/iOS) 概述:本文将介绍10款免费移动程序测试框架,帮助开发人员简化测试流程,一起来看看吧. Bug是移动开发者最头痛的一大问题.不同于Web应用程序开发, ...

  9. 2015年十大热门Android开源新项目

    2015年十大热门Android开源新项目 2015 即将结束,又到了大家喜闻乐见的年终盘点时刻啦,今天给大家盘点一下 2015 年 Android 开发领域新出现的 10 大热门开源项目.数据来自于 ...

随机推荐

  1. Sql触发器脚本

    ALTER Trigger [dbo].[test] --新建触发器 On [dbo].[test1] --在test1表中创建触发器 for insert --触发条件 As --事件触发后所要做的 ...

  2. 20160408javaweb之JDBC ---PreparedStatement

    PreparedStatement 1.Sql注入:由于jdbc程序在执行的过程中sql语句在拼装时使用了由页面传入参数,如果用户恶意传入一些sql中的特殊关键字,会导致sql语句意义发生变化,这种攻 ...

  3. 类库探源——System.Drawing

    一.System.Drawing 命名空间简述 System.Drawing 命名空间提供访问 GDI+ 的基本功能,更高级的功能在 System.Drawing.Drawing2D,System.D ...

  4. JAVA IDE下载地址

    Subclipse 各版本官网下载地址: http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240 Eclipse ...

  5. JavaScript中的Date

    Date 对象用于处理日期和时间. var myDate=new Date() Date 对象会自动把当前日期和时间保存为其初始值. Date常用方法有: myDate.getYear(); //获取 ...

  6. java之表达式陷阱

    String str1 = "Hello Java的长度:10"; String str2 = "Hello Java的长度:10";  String str3 ...

  7. IOS 学习笔记 2015-04-08 OC-NSUserDefaults 持久化对象

    NSUserDefaults适合存储轻量级的本地数据,比如要保存一个登陆界面的数据,用户名.密码之类的; NSUserDefaults被设计用来存储设备和应用的配置信息,它通过一个工厂方法返回默认的. ...

  8. ASP.NET缓存 Cache

    缓存介绍 如果每次进入页面的时候都查询数据库生成页面内容的话,如果访问量非常大,则网站性能会非常差,而如果只有第一次访问的时候才查询数据库生成页面内容,以后都直接输出内容,则能提高系统性能,这样无论多 ...

  9. mysql中 出现No query specified

    Mysql----error:no query specified mysql下抛出错误: error:no query specified 出现此错误是sql不合法原因: 如:select * fr ...

  10. PHP类中的__get()和__set函数到底有什么用?

    当试图获取一个不可达变量时,类会自动调用__get. 同样的,当试图设置一个不可达变量时,类会自动调用__set. 在网站中,这两个并不是什么非用不可的函数.   例如: Class Test {   ...