Android Design Principles

Enchant Me

Delight me in surprising ways

用惊奇的方式取悦用户

  漂亮的界面,仔细放置的动画,一个恰到时机的音效,都是愉悦的体验。

  轻微的效果会造成一种不费力感觉,还有一种力量就在手边的感觉。

Real objects are more fun than buttons and menus

真实的物体比按钮和菜单更有趣

  允许用户在你的app中直接触摸和操纵物体。

  这样使得执行一项工作时的认知更加容易(花费的努力更少),同时在情感上也获得更多满足感。

Let me make it mine

允许个性化定制

  人们喜欢加一些个性化的东东,这样可以让他们觉得在自己家一样自在,并且有掌控感。

  可以提供一些默认的情况(默认情况要保证合理、美观),但是也考虑到一些更加有趣的个性化定制,只要不妨碍主功能就行了。

  这个比较典型的例子就是换壁纸、换皮肤。

Get to know me

了解用户

  学习用户的喜好,记住它们,把上一次的选择放在最方便获得的位置。

  而不是一次又一次地让用户做出同样的选择。

Simplify My Life

Keep it brief

保持简短

  用短的段落和简单的话,如果句子太长用户会比较倾向于skip它们。

Pictures are faster than words

图比文字好

  考虑用图片来解释概念,图片比较容易引起用户的注意,而且比文字更有效。

Decide for me but let me have the final say

为用户做决定,但是让用户有最终选择权

  采取一些最好的猜测和行为,而不是直接问。

  太多的选择会导致用户不开心。

  仅仅在你选择错了的时候,允许用户改变你的行为。

Only show what I need when I need it

仅仅显示用户当前需要的东西

  当人们一下子看到太多东西的时候,会感到不堪重负。

  把任务和信息分解成可消化的小块,将当前不必要的选项统统隐藏起来,在用户进行下一步的时候再交给他们。

I should always know where I am

用户需要一直知道在哪里

  给用户以信心,让他们知道他们在什么位置。

  应该让你的app中的地方看起来明晰,在屏幕之间使用一些转换,来显示场景之间的关系。

  对于正在进行中的任务,提供一些反馈。

Never lose my stuff

永远不要丢失用户的东西

  对于用户花时间创建的东西,一定要保存好,让用户从任何地方都可以获取。

  记住设置,个性化的触摸,还有一些用户创造的东西,要跨平台:手机、平板、电脑。

  这样做,升级对用户来说就显得很容易和方便,不会带来额外的麻烦。

if it looks the same, it should act the same

看起来一样的东西,应当具有一样的功能

  通过视觉上的明显区分,帮助用户区分功能上的不同。

  避免modes,避免那些看上去相同的地方,对于相同的输入却做出不同的响应。

Only interrupt me if it's important

仅仅在重要的情况下打断用户

  像一个优秀的助手,会保护人们,免于非重要的小事。

  人们会想要保持专注,除非重要,或者对时间敏感,否则不要去打断用户。

  打扰会造成困扰,体验不好。

Make Me Amazing

Give me tricks that work everywhere

用一些在哪里都能用的技巧

  如果用户自己解决了问题,他们会感觉非常好。

  让你的app易于学习,从其他的Android app中学习视觉模式和肌肉记忆。

  比如,滑动就是一种很好的导航捷径。

It's not my fault

不是用户的错

  在你提示用户改正错误或者纠正的时候,be gentle.

  在用你的应用的时候,用户会想要感觉自己很聪明。

  如果出错了,给出清晰的恢复指令,但是不用给出技术细节。

  如果你可以后台直接修复问题那就更好了。

Sprinkle encouragement

给予鼓励

  把复杂的任务分成比较小的几步,让它们容易完成。

  对行为给予反馈,即便只是一个很微弱的光晕。

Do the heavy lifting for me

为用户做一些重要的提升

  让新手感觉自己是专家,让他们能够做成一些他们以为自己不能做的事情。

  比如,把多种照片效果结合在一起的快捷方式,可以让业余的照片制作者在简单的几步之后看到神奇的效果。

Make important things fast

让重要的事情变快

  不是所有的动作都是相同的。

  找出你的app中最重要的部分,让它很容易被发现,并且可以很快被使用。

  就像相机应用的快门键,或者是音乐播放软件的暂停键。

参考资料

  http://developer.android.com/design/get-started/principles.html

Android Design Principles的更多相关文章

  1. Android Design Support Library使用详解

    Android Design Support Library使用详解 Google在2015的IO大会上,给我们带来了更加详细的Material Design设计规范,同时,也给我们带来了全新的And ...

  2. Android开发学习之路-Android Design Support Library使用(CoordinatorLayout的使用)

    效果图: 上面的这个图有两个效果是,一个是顶部的图片,在上滑之后会隐藏起来并且显示出一个ToolBar(ToolBar类似于ActionBar,但是只有ToolBar是兼容Material Desig ...

  3. 【android design】android常用设计资源

    一.概述 大部分程序员擅长开发,但是对于设计却知之甚少.这直接导致,程序员在初期开发出来的应用(大多为兴趣或实用导向)中看不中用.因此,有必要搜集整合一些设计资源,这样既能减轻程序员在设计上所耗费的时 ...

  4. Android Design 4.4中文版发布

    “两年前的今天,我们发布了 Android Design 中文版(旧闻链接). 随着 Android 系统的发展,界面和设计语言都不断的发生变化.韶华易逝.光阴苒冉,Android 进化到了 4.4 ...

  5. Android Design

    在android的讲解 Android Design

  6. 【转】【翻】Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏

    转自:http://mrfufufu.github.io/android/2015/07/01/Codelab_Android_Design_Support_Library.html [翻]Andro ...

  7. Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏

    原文:Codelab for Android Design Support Library used in I/O Rewind Bangkok session--Make your app fanc ...

  8. Android Design 与 Holo Theme

    转载:http://www.geekpark.net/topics/179488 [核心提示] 提到 Android Design,很多人会做出”啊,知道,就是黑色的背景和灰蓝色的平的按钮嘛”,那么到 ...

  9. Codelab for Android Design Support Library used in I/O Rewind Bangkok session

    At the moment I believe that there is no any Android Developer who doesn't know about Material Desig ...

随机推荐

  1. Windows Azure Web Site (9) Web Site公网IP地址

    <Windows Azure Platform 系列文章目录> 本文会同时介绍国内由世纪互联运维的Azure China和海外Azure Global. 熟悉Windows Azure平台 ...

  2. JS和jQuery中的事件总结(一)

    学而时习之,小白现在天天写页面,基础知识还是要恶补的. 进入正题,什么是事件(此处单独对jQuery.JS)?就是JS和Html之间的交互时呢,用户和浏览器操作页面时的动作(其实是为引发的效果的执行操 ...

  3. asp.Net获取脚本传过来的参数的方法汇总

    最基础的知识啦,不过,还是记下来吧. 接收用get 方法传输的数据的写法: string userName= Request.QueryString["name"]; 接收用pos ...

  4. Struts2 源码分析——过滤器(Filter)

    章节简言 上一章笔者试着建一个Hello world的例子.是一个空白的struts2例子.明白了运行struts2至少需要用到哪一些Jar包.而这一章笔者将根据前面章节(Struts2 源码分析—— ...

  5. 30天C#基础巩固----查找XML文件元素

    一:XML文档 了解xml文档. 利用代码来创建XML文档. //引用命名空间+using System.Xml; XmlDocument xdoc=new XmlDocument(); XmlDec ...

  6. .Net语言 APP开发平台——Smobiler学习日志:如何仿微信朋友圈的消息样式?

    最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的”Smobil ...

  7. javascript小数点后4舍5进

    toFixed();获得小数点后面多少为数字.四舍五入的方法. 例如: var floatNum = 5.234 var temp = floatNum.toFixed(1); -- temp = 5 ...

  8. html5学习笔记6-- canvas

    绘制普通直线,先看效果图: 实现代码如下: <!DOCTYPE html> <html> <head lang="en"> <meta c ...

  9. jquery基本选择器id

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. VirtualBox网络设置的问题

    在VirtualBox里新建了一个虚拟Linux系统,默认的连接方式是网络地址转换(NAT).发现主机不能访问虚拟机的samba服务器,ping了一下,虚拟机可以ping主机,但是主机不能ping虚拟 ...