Android Programming: Pushing the Limits -- Chapter 4: Android User Experience and Interface Design
User Stories:
@、通过写故事来设计应用。
@、每个故事只关注一件事。
@、不同的故事可能使用相同的组件,因此尽早地对故事进行分类。
@、把目标用户构想到故事里,描述他们的基本特征,会在什么时候、什么地点使用该应用等信息,因此来确定故事的优先级。
Android UI Design:
@、构思应用需要展示的界面及内容,不需要详细的界面设计。
@、确定各界面的跳转关系。
@、用户界面原型设计,可通过工具进行,比如Android Studio。
Android UI Elements:
@、尽可能使用已经存在的widget(在android.widget包里)。
Pure Android:http://developer.android.com/design/patterns/pure-android.html
@、文字
how you express your message in text matters, which is described in detail in the Writing Style section found here: http://developer.android.com/design/style/writing.html.
1、 字体:使用容易辨别的字体,装饰性字体最好限于Logo等。推荐使用Roboto字体。
2、 字数:一行的字数控制在45到72个字符(characters)。
3、 单位:文字大小使用sp作为单位。
4、 大小:

@、颜色
1、A great resource for interpreting what different colors mean in different cultures is the color wheel by David McCandles, which you can find at
http://www.informationisbeautiful.net/visualizations/coloursin-cultures
1、 The Android Design Guidelines (see http://developer.android.com/design/style/color.html)
2、 A great tool for checking how your image looks to someone who is color blind is Vischeck, which you can find at http://www.vischeck.com. This tool also lets you correct an image with regard to color blindness.
@、图片和图标
1、 尽可能使用标准图标,因为用户已经习惯了,不要让用户花时间来了解图标的含义。
2、 图标:http://developer.android.com/design/style/iconography.html
3、 设计图标时用到的元素能够让用户立马与实际物品关联上。
@、添加游戏元素,让使用应用的人获得奖励。
附加资源:
书籍:
Weinschenk, Susan M., Ph.D. 100 Things Every Designer Needs to Know About People. New Riders, 2012.
Krug, Steve. Don’t Make Me Think: A Common Sense Approach to Web Usability, 2nd Edition. New Riders, 2005.
Lehtimäki, Juhani. Juhani Lehtimäki. Smashing Android UI. Wiley, 2012
网址:
Android Design at
http://developer.android.com/design/index.html
The Easy Way to Writing Good User Stories at
http://codesqueeze.com/the-easy-way-towriting-good-user-stories/
Susan M. Weinschenks blog on how people think and behave:
The Android Developers YouTube channel, specifically the Android Design in Action episodes:
http://www.youtube.com/user/androiddevelopers
Android Programming: Pushing the Limits -- Chapter 4: Android User Experience and Interface Design的更多相关文章
- Android Programming: Pushing the Limits -- Chapter 7:Android IPC -- ApiWrapper
前面两片文章讲解了通过AIDL和Messenger两种方式实现Android IPC.而本文所讲的并不是第三种IPC方式,而是对前面两种方式进行封装,这样我们就不用直接把Aidl文件,java文件拷贝 ...
- Android Programming: Pushing the Limits -- Chapter 7:Android IPC -- Messenger
Messenger类实际是对Aidl方式的一层封装.本文只是对如何在Service中使用Messenger类实现与客户端的通信进行讲解,对Messenger的底层不做说明.阅读Android Prog ...
- Android Programming: Pushing the Limits -- Chapter 7:Android IPC -- AIDL
服务端: 最终项目结构: 这个项目中,我们将用到自定义类CustomData作为服务端与客户端传递的数据. Step 1:创建CustomData类 package com.ldb.android.e ...
- Android Programming: Pushing the Limits -- Chapter 5: Android User Interface Operations
多屏幕 自定义View 多屏幕 @.Android 4.2 开始支持多屏幕. @.举例: public class SecondDisplayDemo extends Activity { priva ...
- Android Programming: Pushing the Limits -- Chapter 3: Components, Manifests, and Resources
Android Components Manifest文件 Resource and Assets v\:* {behavior:url(#default#VML);} o\:* {behavior: ...
- Android Programming: Pushing the Limits -- Chapter 2: Efficient Java Code for Android
Android's Dalvik Java 与 Java SE 进行比较 Java代码优化 内存管理与分配 Android的多线程操作 Android’s Dalvik Java 与 Java SE ...
- Android Programming: Pushing the Limits -- Chapter 1: Fine-Tuning Your Development Environment
ADB命令 Application Exerciser Monkey Gradle ProGuard 代码重用 版本控制 静态代码分析 代码重构 开发者模式 ADB命令: @.adb help:查 ...
- Android Programming: Pushing the Limits -- Chapter 6: Services and Background Tasks
什么时候使用Service 服务类型 开启服务 后台运行 服务通信 附加资源 什么时候使用Service: @.任何与用户界面无关的操作,可移到后台线程,然后由一个Service来控制这个线程. 服务 ...
- [iOS翻译]《iOS 7 Programming Pushing the Limits》系列:你可能不知道的Objective-C技巧
简介: 如果你阅读这本书,你可能已经牢牢掌握iOS开发的基础,但这里有一些小特点和实践是许多开发者并不熟悉的,甚至有数年经验的开发者也是.在这一章里,你会学到一些很重要的开发技巧,但这仍远远不够,你还 ...
随机推荐
- HDU 4939 Stupid Tower Defense(dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4939 解题报告:一条长度为n的线路,路上的每个单元格可以部署三种塔来给走在这条路上的敌人造成伤害,第一 ...
- 剑指Offer 调整数组顺序使奇数位于偶数前面
题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 思路: ...
- &,引用复制@,忽略错误提示
function &chhua() { static $b="www.jb51.net";//申明一个静态变量 $b=$b."WEB开发"; echo ...
- HDU 1503 带回朔路径的最长公共子串
http://acm.hdu.edu.cn/showproblem.php?pid=1503 这道题又WA了好几次 在裸最长公共子串基础上加了回溯功能,就是给三种状态各做一个 不同的标记.dp[n][ ...
- HackerRank savita-and-friends
Description 在一条边上求一个点,使得这个点到所有点的最长的最短距离 最短. \(n \leqslant 10^5\) Sol Dijkstra+扫描线+单调队列. 这个好像叫什么最小直径生 ...
- MySQL使用详解--根据个人学习总结
1.安装配置 2.启动mysql服务并配置 mysql> \s(status也行) 查看当前服务器状态 查看编码状态 Server characterset : utf8 Db characte ...
- CTSC2016游记
打了几天酱油.. day1 3分滚..考场上打了5+0+3,5文件名挂了. (因为5那题我会nlog^3n做法,然而只是暴力分而已.(被KDTree艹过去的一题)) 提答xjb玩了三分,原因是exgc ...
- php内核和瓦力上线部署
http://www.php-internals.com/ http://www.walle-web.io/
- ubuntu set ntpdate
1. 安装ntpdate工具 # sudo apt-get install ntpdate 2. 设置系统时间与网络时间同步 # ntpdate cn.pool.ntp.org 3. 将系统时间 ...
- 使用SharePoint 2010 母版页
SharePoint 2010母版页所用的还是ASP.NET 2.0中的技术.通过该功能,实现了页面框架布局与实际内容的分离.虽然在本质上自定义母版页的过程和以前版本的SharePoint大致相同,但 ...