Android开发之程序猿必需要懂得Android的重要设计理念
前几天去參加了带着自己的作品去參加服务外包大赛,由于签位抽到的比較靠后就等待了蛮久,就跟坐在前面的一起參赛的选手開始讨论Android的开发经验。各自给对方展示了自己的作品,小伙伴就建议我看一下官方Design的设计原则会非常有帮助。今天就想依据自己的理解把其设计原则分享给大家。总共是三大点。17小点。
一、让用户沉醉
(1)注重设计的细节
精致的界面 , 设计恰当动画或适时的音响效果都是一种快乐体验。微妙的影响将导致一种游刃有余的感觉,感觉到一股强大的力量就在眼前。
(2)尽可能使用形象化的图标而不是普通的button或菜单
在你的应用程序里同意用户直接接触和操作实体对象。
它将降低了用户所需的认知负担。以及运行一项任务的时间,而在情感上更让人满足。
(3)让用户能够展示个性
用户喜欢添加自己喜欢的元素以此来添加自己的归属感。既要提供合理的预设值,也要给用户提供可选的不会妨碍主要功能实现的效果选择。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ2Vyb2dlbGlu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
(4)去了解用户的行为
去学习用户的使用行为,而不是要求他们做出相同的选择。将常常使用的功能放在显而易见的位置。提高用户的体验感觉
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ2Vyb2dlbGlu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
二、添加易用性
(1)精简文字
用简单的短语词组,句子太长会引起用户的厌恶感。
(2)图片比文字更有吸引力
考虑使用图片来阐释创意和理念。图片非常easy的会得到用户的注意力和好感。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ2Vyb2dlbGlu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
(3)让用户有终于的决定权
先推測用户的行为和想法而不是直接去询问用户,太多的选择和决定会让用户厌烦。除非用户的选择会造成不良的后果。
(3)在合适的场景出现合适的选项
假设一下子让用户看到太多的东西,会让用户认为迷茫和受打击。
尽量将功能和信息细分化,变成一小块一小块。适当的隐藏不重要的选项和教导用户怎样前行,这会让用户认为自己非常愚蠢。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ2Vyb2dlbGlu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
(4)用用户清晰的知道应用的功能结构
让用户知道你的应用程序的不同的Activity之间的内在逻辑和功能上的联系。将功能的进程或流程的进度反馈给用户。
能够通过导航的实际或者顶端tab界的设计。
(5)不要遗失用户的过往信息
记住用户的设置、历史浏览信息和在手机、平板电脑,和电脑的自己定义创作。这将使你的应用上升一个级别。
今天就写到这把。还有8个点没讲到。看大家的反馈在看看写不写下把。
Android开发之程序猿必需要懂得Android的重要设计理念的更多相关文章
- Android开发之程序猿必需要懂得Android的重要设计理念2(5.20更新版)
上篇文章介绍了Android开发的设计理念的一部分,并没有得到博友们的多大认可,仅仅看到了一位博友在以下留言期待下一篇文章的发表,为了这小小的唯一支持.我决定继续把后面的8个要点介绍一下,自己也潜心反 ...
- Android开发快速入门(环境配置、Android Studio安装)
Android是一种激动人心的开源移动平台,它像手机一样无处不在,得到了Google以及其他一些开放手机联盟成员(如三星.HTC.中国移动.Verizon和AT&T等)的支持,因而不能不加以学 ...
- Android开发学习总结——搭建最新版本的Android开发环境
原文出自:https://www.cnblogs.com/xdp-gacl/p/4322165.html#undefined 最近由于工作中要负责开发一款Android的App,之前都是做JavaWe ...
- android开发学习笔记系列(1)-android起航
前言 在学习安卓的过程中,我觉得非常有必要将自己所学的东西进行整理,因为每每当我知道我应该是如何去实现功能的时候,有许多细节问题我总是会遗漏,因此我也萌生了写一系列博客来描述自己学习的路线,让我的an ...
- Android开发学习之路-该怎么学Android(Service和Activity通信为例)
在大部分地方,比如书本或者学校和培训机构,教学Android的方式都基本类似,就是告诉先上原理方法,然后对着代码讲一下. 但是,这往往不是一个很好的方法,为什么? ① 学生要掌握这个方法的用途,只能通 ...
- .NET 开源了,Visual Studio 开始支持 Android 和 iOS 程序编写并自带 Android 模拟器
.NET 开源了,Visual Studio 开始支持 Android 和 iOS 程序编写并自带 Android 模拟器 北京时间今天凌晨的 Connect(); 大会上,多少程序员的假想成为现实. ...
- Android开发-取消程序标题栏或自定义标题栏
注:本文由Colin撰写,版权所有!转载请注明原文地址,谢谢合作! 在Android开发中,跟据需要我们有时候需要自定义应用程序的标题栏或者取消程序的标题栏,下面本菜鸟在此记录与分享一下自己使用的方法 ...
- Android 开发笔记“程序安装包APK的制作”
资源来源:http://blog.csdn.net/qualcent/article/details/6959547 完成Android项目后,需要将程序打包成APK文件(Android Packag ...
- android开发时程序出现崩溃问题
原因:项目目录下的:src与gen中的包名不一致时,出现问题 <manifest xmlns:android="http://schemas.android.com/apk/res/a ...
随机推荐
- SpringCloud 使用Feign访问服务
Feign简介: 声明式的Rest WEB 服务的客户端, https://github.com/OpenFeign/feign.Spring Cloud 提供了Spring-cloud-start ...
- springCloud的使用02-----服务消费者(rest+ribbon)
1 将服务提供者做成集群模式 配置service-hi的端口为8762进行启动,配置service-hi的端口为8763进行启动, service-hi会在ecureka server上注册两个ser ...
- HDU 6469 /// 二分
题目大意: 分裂怪有1到n种等级, 第1级的分裂怪称为原子怪,它不会分裂,被击杀时会产生a[1]点经验: 而第k级的分裂怪死亡时则会分裂成a[k]个第k - 1级的分裂怪. 一个体力可以杀死一个怪物. ...
- dataframe字段过长被截断
总之能,情况就是这样. 看看df类型: 64位明显不够用啊. 网上找到了segmentfault有这个问题,上面说试试 pd.set_option('display.width', 200) ,再百度 ...
- Linux查询Java进程以及杀掉其进程
今天公司VPN掉线后,访问项目出错502. 百度了说是nginx代理错误,但入职不久不知道咋搞... 于是乎就想重启一下Java应用. 1.找到Java应用的进程 jps 命令 和 ps - ...
- Linux下创建动态库与使用
参考文章:dll和so文件区别与构成:http://www.cnblogs.com/likwo/archive/2012/05/09/2492225.html 动态库路径配置- /etc/ld.so. ...
- 关于python接口测试connect error
接口测试里如果报错出现 socket.gaierror: [Errno 8] nodename nor servname provided, or not known 或者 urllib3.excep ...
- 数据结构---Java---String
1.概述 1.1 源码(JDK1.8) public final class String implements java.io.Serializable, Comparable<String& ...
- BZOJ 1005: [HNOI2008]明明的烦恼(高精度+prufer序)
传送门 解题思路 看到度数和生成树个树,可以想到\(prufer\)序,而一张规定度数的图的生成树个数为\(\frac{(n-2)!}{\prod\limits_{i=1}^n(d(i)-1)!}\) ...
- BZOJ 4032: [HEOI2015]最短不公共子串(后缀自动机+记忆化搜索)
传送门 解题思路 首先需要预处理两个串\(nxt(i)(j)\)表示i位置之后最近的\(j\). 第一问直接对\(b\)建后缀自动机,枚举\(a\)的起点暴力匹配. 第二问枚举\(a\)的起点,\(b ...