Android5.0新特性-Material Design
概述
2014年,Google携Android5.X重装归来。全新的UI设计和更加优化的性能,令开发人员眼前一亮
安装和配置Android5.0开发环境
开发Android还得靠AS。下载地址
http://developer.android.com/intl/zh-cn/sdk/index.html
材料设计概述
材料的形态模拟
Google通过模拟自然界纸墨的形态变化、光线与阴影、纸与纸之间的控件层级关系,带来一种真实的空间感
更加真实的动画
Android5.x大量添加了各种新的动画效果,让整个设计风格更加自然和谐。
大色块的使用
Material Desigin中运用了大量高度饱和、适中亮度的大色块来突出界面的主次,并一扫Android4.X系列Holo主题的沉重感。让界面更加富有时尚感和视觉冲击力
此外还有非常多新的设计风格,如悬浮button,聚焦大图、无框button、波纹效果等新特性
详细可參考
http://www.google.com/design/#resources
材料设计能做哪些工作
- 保证向后的兼容性
- 使用材料设计的主题
- 让视图产生阴影
- 使用RecyclerView和CardView
- 定制动画
intel x86模拟器
下载和安装intel x86模拟器加速器
之前的ARM模拟器,是以软件的形式模拟,所以非常慢~x86能够选这使用宿主机器的GPU等,和真机的速度相差无几~
以下更新SDK使用了国内的代理。须要的童鞋能够看下
下载
打开SDK Manager
install 之后
安装
找到SDK例如以下文件夹,由于这个加速器是跨平台的,windows操作系统相应的是exe执行文件,安装就可以
当然你也能够使用genymotion~有真机最好了~
从官方下载x86模拟器加速器
除了从SDK中下载,还能够从Intel官方站点上下载加速器
官网例如以下:
https://software.intel.com/zh-cn/android
https://software.intel.com/zh-cn/android/articles/intel-hardware-accelerated-execution-manager/
检測 Intel X86模拟器加速器是否成功安装
cmd命令行窗体:
安装x86模拟器镜像
尽管我们上面安装了加速器。可是仅仅是模拟器而已,镜像才是关键!
!!
从SDK中直接安装
由于我的电脑操作系统是64位。我们打算在5.0的模拟器中使用,所以选择例如以下:
从Intel官方下载安装
https://software.intel.com/zh-cn/android/articles/android-44-kitkat-x86-emulator-system-image
下载后放到相应的文件夹就可以~
体验以x86模式执行Android模拟器
都是默认选项,选择使用宿主机器的GPU~
哈哈 速度那是必须的快~
Material主题
Material Design如今有三种默认的主题能够设置:
- @android:style/Theme.Material (dark version)
- @android:style/Theme.Material.Ligh (ligth version)
- @android:style/Theme.Material.Ligh.DarkActionBar
同一时候 Android5.x提出了Color Palette (颜色调色板)的概念。让开发人员能够自己设定系统区域的颜色。使整个APP的颜色风格和系统的颜色风格保持一致。
通过例如以下代码,能够通过使用自己定义Style的方式来创建自己的Color Palette 颜色主题,从而实现不同的颜色风格。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppTheme" parent="android:Theme.Material">
<!--appBar的颜色-->
<item name="android:colorPrimary">#BEBEBE</item>
<!--状态栏的颜色-->
<item name="android:colorPrimaryDark">#FF5AEBFF</item>
<item name="android:navigationBarColor">#FFFF4130</item>
<item name="android:colorAccent">#BF3EFF</item>
</style>
</resources>
RecyclerView
详见本人还有一篇博客 RecyclerView全然解读
立体卡片CardView
详情请查看鄙人CradView的使用
视图和阴影
Material Design的一个非常重要的特性就是拟物扁平化。
影响视图阴影的因素
以往的Android View通常有2个属性——X和Y,而在Android5.X中,Google为其添加了一个新的属性 —Z,相应垂直方向上的高度变化。
在Android5.x中,View的Z值由 elevation + translationZ(这两个都是5.x引入的新特性)组成。
当中 elevation是静态的成员,translationZ能够在代码中使用来实现动画的效果。
Z = elevation + translationZ
通过布局文件和Java代码设置视图的阴影
通过布局文件设置
在xml中设置View的视图高度
android:elevation="Xxdp"
比方:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/cardview_contents"
android:elevation="10dp" />
通过Java代码设置
view.setTranslationZ(XXX)
通常也会使用属性动画来为视图高度改变的时候添加一个动画效果
if(flag){
view.animate().translationZ(100);
flag=false;
}else{
view.animate().translationZ(0);
flag=true;
}
阴影拖动
视图裁剪
着色
ripple_drawable资源
矢量drawable资源
在Android中使用SVG矢量图
SVG设计器
实现SVG矢量动画
APP的兼容性
Android5.0新特性-Material Design的更多相关文章
- Android5.0新特性——Material Design简介
Material Design Material Design简介 Material Design是谷歌新的设计语言,谷歌希望寄由此来统一各种平台上的用户体验,Material Design的特点是干 ...
- Android5.0新特性之——按钮点击效果动画(涟漪效果)
Android5.0 Material Design设计的动画效果 RippleDrawable涟漪效果 涟漪效果是Android5.0以后的新特性.为了兼容性,建议新建drawable-v21文件夹 ...
- Android5.0新特性——兼容性(support)
兼容性 虽然Material Design新增了许多新特性,但是并不是所有新内容对对下保持了兼容. 使用v7包 v7 support libraries r21 及更高版本包含了以下Material ...
- Android5.0新特性——阴影和剪裁(shadow)
阴影和剪裁 View的z属性 Material Design建议为了凸显布局的层次,建议使用阴影效果,并且Android L为了简化大家的工作,对View进行了扩展,能使大家非常方便的创建阴影效果: ...
- Android5.0新特性——全新的动画(animation)
全新的动画 在Material Design设计中,为用户与app交互反馈他们的动作行为和提供了视觉上的连贯性.Material主题为控件和Activity的过渡提供了一些默认的动画,在android ...
- Android5.0新特性:RecyclerView实现上拉加载更多
RecyclerView是Android5.0以后推出的新控件,相比于ListView可定制性更大,大有取代ListView之势.下面这篇博客主要来实现RecyclerView的上拉加载更多功能. 基 ...
- Android5.0新特性——图片和颜色(drawable)
图片和颜色 tint属性 tint属性一个颜色值,可以对图片做颜色渲染,我们可以给view的背景设置tint色值,给ImageView的图片设置tint色值,也可以给任意Drawable或者NineP ...
- Android5.0新特性——新增的Widget(Widget)
新增的Widget RecyclerView RecyclerView是ListView的升级版,它具备了更好的性能,且更容易使用.和ListView一样,RecyclerView是用来显示大量数据的 ...
- Android5.0新特性之——控件移动动画(初级)
最近开发,UI大牛们设计了好多很炫酷吊炸天的动画,不由得重新学习了一下5.0的ObjectAnimator动画. ObjectAnimator动画的原理,通过反射控件的setXXX方法,改变控件的实际 ...
随机推荐
- Java入门到精通——调错篇之Eclipse No Java virtual machine was found after searching the following locations
一.错误现象. 在一次启动Eclipse的时候弹出了以下的错误 二.错误原因 原因是没有找到javaw.exe文件的路径. 三.解决方式 在eclipse根文件夹下找到eclipse.ini增加以下一 ...
- 【LeetCode】66. Plus One (2 solutions)
Plus One Given a non-negative number represented as an array of digits, plus one to the number. The ...
- juqery和dom对象互换
一.jQuery对象与DOM对象相互转换 1.jQuery对象转DOM对象 var $cr = $("#cr"); //jQuery对象 //转换成DOM对象,索引号从0开 ...
- dubbox rest协议jackson 反序列化的坑
dubbox 相对于dubbo 对了 rest 协议的支持 而且默认序列化的协议 是json dubbox 内部是通过 RestEasy 处理 rpc 服务 而 RestEasy获取序列化是 是通过 ...
- EMQ ---问题集
1)emqttd 使用 SSL遇到的问题:服务器直接布了一份emqttd ,然后什么都没管,端口默认的ws 8083,wss8084,mqtt 1883,mqtt(ssl) 8883. 结果跑起来之后 ...
- 用Jedis操作redis示例一,Key,value HashMap
简单的key,value形式 public class RedisDemo { public static void main(String[] args) { Jedis jedis = new J ...
- Windows下phpStudy中的Apache无法启动的排查方法
尝试一:检查端口占用问题 刚开始以为是端口占用,使用 phpStudy 自带的端口检测,查看并没有占用.在 cmd 控制台中输入:services.msc 去系统服务里面看,单独配置的 Apache ...
- C#如何判断操作系统位数是32位还是64位
方法一: 对于C#来说,调用WMI是一种简单易行的方式.我们可以用Win32_Processor类里面的AddressWidth属性来表示系统的位宽.AddressWidth的值受CPU和操作系统的双 ...
- FATFS
(一),什么是文件管理系统 答:数据在PC上是以文件的形式储存在磁盘中的.这些数据的形式一般为ASCII码或二进制形式.简单点说就是:管理磁盘上的文件的方法的代码! 如:我们写到SD卡上面的数据 ...
- 【ecshop后台详解】系统设置-商店设置
商店设置是我们ecshop新用户第一步先要设置的地方,因为里面相当于网站的基础.包括公司名称,电话,地址,tittle等重要的信息都是这里修改,如果这里没有修改的话,如果有访客来到你网站可能以为走错了 ...