【Material Design视觉设计语言】开篇
作者:郭孝星
微博:郭孝星的新浪微博
邮箱:allenwells@163.com
博客:http://blog.csdn.net/allenwells
Github:https://github.com/AllenWells
【Material Design视觉设计语言】章节列表
【Material Design视觉设计语言】开篇
【Material Design视觉设计语言】Material Design设计概述
【Material Design视觉设计语言】应用布局设计
【Material Design视觉设计语言】应用自适应布局
【Material Design视觉设计语言】应用样式设计
【Material Design视觉设计语言】应用动画设计
【Material Design视觉设计语言】UI组件设计(一):button
【Material Design视觉设计语言】UI组件设计(二):卡片
【Material Design视觉设计语言】UI组件设计(三):纸片
【Material Design视觉设计语言】UI组件设计(四):表格
【Material Design视觉设计语言】UI组件设计(五):提示框
【Material Design视觉设计语言】UI组件设计(六):分隔线
【Material Design视觉设计语言】UI组件设计(七):网格
【Material Design视觉设计语言】UI组件设计(八):列表
【Material Design视觉设计语言】UI组件设计(九):菜单
【Material Design视觉设计语言】UI组件设计(十):选择器
【Material Design视觉设计语言】UI组件设计(十一):进度条
【Material Design视觉设计语言】UI组件设计(十二):滑块
【Material Design视觉设计语言】UI组件设计(十三):Toast
【Material Design视觉设计语言】UI组件设计(十四):Tabs
【Material Design视觉设计语言】UI组件设计(十五):文本框
Material Design,即原质化设计,是Google官方退出的视觉设计语言,目的在于统一Android应用界面设计,提升用户体验。其实不只在Android上,在HTML等其它领域。Material Design也表现出了旺盛的生命力。
一 设计目标
Material Design的设计目标就是构建Android跨平台和设备尺寸的统一用户体验,遵循主要的移动设计原则,同一时候支持触摸、语音、鼠标和键盘等多种输入方式。
二 设计原则
2.1 应用界面组件具有实体感
实体感即实体隐喻,是构建系统化和空间合理化的统一,与众不同的触感是实体感的基础。
实体感的效果体验来源于两个方面:
- 实体的表面
- 实体的边缘
实体的表面和边缘提供基于真实效果的视觉体验,熟悉的触感让我们的用户能够高速地理解和认知。实体的多样性能够让我们呈现出很多其它反映真实世界的设计效果,但同一时候又不会脱离客观的物理规律。
那么怎样在应用的设计中向用户阐述组件的运动规律、交互方式、空间关系呢?
解答这个问题不得不提到光效、表面质感、运动感这三个重要的概念。
尤其是光效,真实的光效能够解释应用组件之间的交合关系以及空间关系。例如以下图所看到的:
2.2 组件的颜色和布局要鲜明和形象
在组件的布局和颜色搭配上,要从排版、网络、空间、比例、配色和图像使用等方面去考量,精心选择色彩、图像和合乎比例的字体和留白,构建出鲜明和形象的用户界面。
在组件功能设计上要依据用户行为凸显核心功能,进而在应用上为用户提供友好高效的操作指引。
2.3 为组件加入有意义的动画效果
动画效果是作为独立的场景呈现,表现出组件的连续变化,让用户吸引用户的注意里,以及维持整个系统的连续性体验。
动画效果在设计时应该做到:
- 动画效果应该是有意义的、合理的。能够有效的暗示和指引用户。
- 动画效果的设计应该依据用户的行为而定,能够改变总体设计的触感。
- 动画效果反馈应该细腻、清爽。转场动画应该高效、明晰。
开篇文章大致就讲到这里,兴许的文章会具体讨论样式、布局、动画和组件设计等内容。
【Material Design视觉设计语言】开篇的更多相关文章
- 【Material Design视觉设计语言】应用布局设计
[Material Design视觉设计语言]章节列表 [Material Design视觉设计语言]开篇 [Material Design视觉设计语言]Material Design设计概述 [Ma ...
- 【Material Design视觉设计语言】应用样式设计
作者:郭孝星 微博:郭孝星的新浪微博 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells Github:https://github.co ...
- Material Design(原质化设计)视觉设计语言规范 踏得网镜像
Android 5.0 Lollipop(棒棒糖,也就是之前的代称Android L)全面实践了谷歌最新研发的 Material Design 设计语言规范,只是该设计规范并不是仅针对移动平台. 我们 ...
- Material Design学习笔记
Wiki->移动开发->Android->Material Design-原质化设计 (友情链接:http://wiki.jikexueyuan.com/project/materi ...
- Material Design Lite,简洁惊艳的前端工具箱。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博客地址为http://www.cnblogs.com/jasonnode/ .网站上有对应每一 ...
- Material Design Lite,简洁惊艳的前端工具箱 之 交互组件。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接, 博客地址为http://www.cnblogs.com/jasonnode/ . 网站上有对应 ...
- Android5.0新特性——Material Design简介
Material Design Material Design简介 Material Design是谷歌新的设计语言,谷歌希望寄由此来统一各种平台上的用户体验,Material Design的特点是干 ...
- Android Material Design : Ripple Effect水波波纹荡漾的视觉交互设计
Android Material Design : Ripple Effect水波波纹荡漾的视觉交互设计 Android Ripple Effect波纹荡漾效果,是Android Materia ...
- 使用Material Design 应用主题
自从去年Google推出Material Design这款设计语言后,新的设计规范越来越受开发者们的喜爱,这篇文章包括后续文章就是慢慢的介绍在App中使用Material Design界面主题.动画. ...
随机推荐
- mybatis中整合ehcache缓存框架的使用
mybatis整合ehcache缓存框架的使用 mybaits的二级缓存是mapper范围级别,除了在SqlMapConfig.xml设置二级缓存的总开关,还要在具体的mapper.xml中开启二级缓 ...
- python 深浅拷贝 进阶
主要理解新与旧究竟在哪里 这样也就理解了 深浅拷贝 先说说赋值,事实上python中的赋值事实上是赋值了一个引用.比如: foo1=1.0 foo2=foo1 用操作符is推断时.你能够发现结果是tr ...
- 11.Cocos2dx2.2下使用JNI技术调用jar包里面的一些方法遇到的一些问题及解决方式。
<span style="font-family: Arial, Helvetica, sans-serif;">步骤一:导入JniHelper.h头文件.</s ...
- usr/bin/mysqladmin: refresh failed; error: 'Unknown error'
debian wheezy 升级后, 由于授权错误, 导致password给改动, 在debian的mysql safe下也无法进入. 我在/etc/mysql/my.cnf 里面已经改动了bin ...
- Qt Creator 源码学习 03:qtcreator.pro
当我们准备好 Qt Creator 的源代码之后,首先进入到它的目录,来看一下它的源代码目录有什么奥秘. 这里一共有 9 个文件夹和 9 个文件.我们来一一看看它们都是干什么用的. .git: 版本控 ...
- 程序中图片透明 函数(使用SetBkColor API函数)
void DrawTransparentBitmap(HDC hdc, HBITMAP hBitmap, short xStart, short yStart, COLORREF c ...
- C#委托与事件(生动故事)
[委托] 1,工人Peter按工作步骤向老板报告的程序. 程序: using System; using System.Collections.Generic; using System.Linq; ...
- Android 最简洁的获取联系人头像的代码
ContentResolver cr = view.getContext().getContentResolver(); Uri uri = ContentUris.withAppendedId(Co ...
- 5、list列表常用方法说明
创建列表: 1 2 3 name_list = ['alex', 'seven', 'eric'] 或 name_list = list(['alex', 'seven', 'eric']) 基本操作 ...
- 9.5 Binder系统_驱动情景分析_transaction_stack机制
参考文章:http://www.cnblogs.com/samchen2009/p/3316001.html test_server服务进程可能有多个线程,而在发送数据的时候handle只表示了那个进 ...