前几天去參加了带着自己的作品去參加服务外包大赛,由于签位抽到的比較靠后就等待了蛮久,就跟坐在前面的一起參赛的选手開始讨论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的重要设计理念的更多相关文章

  1. Android开发之程序猿必需要懂得Android的重要设计理念2(5.20更新版)

    上篇文章介绍了Android开发的设计理念的一部分,并没有得到博友们的多大认可,仅仅看到了一位博友在以下留言期待下一篇文章的发表,为了这小小的唯一支持.我决定继续把后面的8个要点介绍一下,自己也潜心反 ...

  2. Android开发快速入门(环境配置、Android Studio安装)

    Android是一种激动人心的开源移动平台,它像手机一样无处不在,得到了Google以及其他一些开放手机联盟成员(如三星.HTC.中国移动.Verizon和AT&T等)的支持,因而不能不加以学 ...

  3. Android开发学习总结——搭建最新版本的Android开发环境

    原文出自:https://www.cnblogs.com/xdp-gacl/p/4322165.html#undefined 最近由于工作中要负责开发一款Android的App,之前都是做JavaWe ...

  4. android开发学习笔记系列(1)-android起航

    前言 在学习安卓的过程中,我觉得非常有必要将自己所学的东西进行整理,因为每每当我知道我应该是如何去实现功能的时候,有许多细节问题我总是会遗漏,因此我也萌生了写一系列博客来描述自己学习的路线,让我的an ...

  5. Android开发学习之路-该怎么学Android(Service和Activity通信为例)

    在大部分地方,比如书本或者学校和培训机构,教学Android的方式都基本类似,就是告诉先上原理方法,然后对着代码讲一下. 但是,这往往不是一个很好的方法,为什么? ① 学生要掌握这个方法的用途,只能通 ...

  6. .NET 开源了,Visual Studio 开始支持 Android 和 iOS 程序编写并自带 Android 模拟器

    .NET 开源了,Visual Studio 开始支持 Android 和 iOS 程序编写并自带 Android 模拟器 北京时间今天凌晨的 Connect(); 大会上,多少程序员的假想成为现实. ...

  7. Android开发-取消程序标题栏或自定义标题栏

    注:本文由Colin撰写,版权所有!转载请注明原文地址,谢谢合作! 在Android开发中,跟据需要我们有时候需要自定义应用程序的标题栏或者取消程序的标题栏,下面本菜鸟在此记录与分享一下自己使用的方法 ...

  8. Android 开发笔记“程序安装包APK的制作”

    资源来源:http://blog.csdn.net/qualcent/article/details/6959547 完成Android项目后,需要将程序打包成APK文件(Android Packag ...

  9. android开发时程序出现崩溃问题

    原因:项目目录下的:src与gen中的包名不一致时,出现问题 <manifest xmlns:android="http://schemas.android.com/apk/res/a ...

随机推荐

  1. PHP pthread多线程

    class test extends Thread { public $arg; public function __construct($arg){ $this->arg = $arg; } ...

  2. 解决:python安装mysqldb模块报 EnvironmentError: mysql_config not found

    最近学习python操作mysql需要安装mysqldb模块 出现EnvironmentError: mysql_config not found 经网上查看,需要安装mysql客户端开发库libmy ...

  3. vue证明题一,vue全家桶的构成

    简单说下vue的构成,当然是简单为主,网上这东西满天飞,简单说几句就ok 1.vue是什么 vue读作view,是一种js框架.只关注于视图层,操作内容包括js,html,css 2.vue全家桶是什 ...

  4. gulp构建前端,压缩css,js文件,实现浏览器自动刷新

    一.安装node nodejs下载地址:https://nodejs.org/ nodejs自带npm模块管理器,安装完成之后打开dos命令窗口输入 node -v就能查看nodejs是否安装成成功 ...

  5. go中字符类型的使用小结

    示例 // 字符类型的用法 package main import ( "fmt" "unsafe" ) func main() { // 未指定类型并赋值字符 ...

  6. sql 根据身份证判断年龄是否小于18岁

    SELECT *, Age= datediff(yy,cast(case when substring(PersonalId,,) ') /*若第7位不是'1'或'2'则表示是15位身份证编码规则*/ ...

  7. Python3.5-20190518-廖老师-自我笔记-模块

    在Python中,一个.py文件就称之为一个模块(Module) 可以作为module的文件类型有".py".".pyo".".pyc".& ...

  8. Java 的内置对象

    1.Request对象 该对象封装了用户提交的信息,通过调用该对象相应的方法可以获取封装的信息,即使用该对象可以获取用户提交的信息.    当Request对象获取客户提交的汉字字符时,会出现乱码问题 ...

  9. range类型(Python)

    range 不是 iterator >>> R = range(3) >>> next(R) Traceback (most recent call last): ...

  10. Navicat连接MySQL8+时出现2059报错

    当我们连接时,会报2059错误 在用navicat连接MySQL8+时会出现2059错误,这是由于新版本的MySQL使用的是caching_sha2_password验证方式,但此时的navicat还 ...