码迷,mamicode.com
首页 > 移动开发 > 详细

ANDROID L——Material Design详解(视图和阴影)

时间:2014-10-17 04:16:53      阅读:429      评论:0      收藏:0      [点我收藏+]

标签:des   android   style   blog   http   color   io   os   使用   

Android L:

 


昨天凌晨Google刚刚确认Android L就是Android Lollipop(5.0)。


Google之前就已经提前推出了Android L Developer Preview(开发者预览版)来帮助开发者更快的了解Android特性,而不久前也推出了64位的模拟器镜像,而且首次搭载Android L系统的Nexus 6和 Nexus 9也即将上市。

相信Android L正式版离我们也不远了,所以是时候开始学习Android L了!



我打算写一个关于Android L的系列文章,本文就先介绍一下Android L最大的一个新特性——Material Design

 


关于Android L如何配置模拟器和创建项目,如果大家有兴趣的话可以看看我之前的一篇文章:

Android L——模拟器配置及创建项目


Material Design包含了很多内容,我大致把它分为四部分:

主题和布局——ANDROID L——Material Design详解(主题和布局)

视图和阴影

UI控件

动画


今天就先来说说第二部分——Material视图和阴影




 

视图和阴影


View的大小位置都是通过x,y确定的,而现在有了z轴的概念,而这个z值就是View的高度(elevation),而高度决定了阴影(shadow)的大小。


bubuko.com,布布扣



View Elevation(视图高度)


View的z值由两部分组成,elevationtranslationZ(它们都是Android L新引入的属性)

eleavation是静态的成员,translationZ是用来做动画。

Z = elevation + translationZ


在layout中使用 android:elevation属性去定义 

在代码中使用 View.setElevation 方法去定义 

设置视图的translation,可以使用View.setTranslationZ方法 

新的ViewPropertyAnimator.zViewPropertyAnimator.translationZ方法可以设置视图的elevation


新的属性值:translationZ允许你创建一个动画暂时的反应出View的高度值(elevation)变化。

这对于响应触摸手势很有用处,请看下面代码(官方Demo中的代码):

 

[java] copy?
 

int   

  •                  (action) {  
  •                      MotionEvent.ACTION_DOWN:  
  •                         Log.d(TAG,  );  
  •                         ;  
  •                      MotionEvent.ACTION_UP:  
  •                         Log.d(TAG,  );  
  •                         ;  
  •                     :  
  •                          ;  
  •                 }  

一个简单触摸监听,在点击和抬起的时候分别设置translationZ的值,效果如下图所示:


bubuko.com,布布扣     bubuko.com,布布扣


 

Shadows and Outlines(阴影和轮廓)


视图的背景边界决定了默认的阴影形状。轮廓(Outlines)代表了图形对象的外形状,并确定了对于触摸反馈的波纹区域。


在Android L中设置一个阴影很简单,只需要两点:

1.设置eleavation值

2.添加一个背景或者outline


可以在xml中通过定义一个背景来设置outline

 

[html] copy?
 

<  

  •     =  
  •     ...  
  •     =  
  •     =   
[html] copy?
 

<!-- res/drawable/myrect.xml --> < =  

  •        =>  =   
  •      =   
  • >  


也可以通过代码来创建一个outline:

 

[java] copy?
 

/* Get the size of the shape from resources. */ int  

  •   
  • mOutlineCircle =  Outline();  
  • mOutlineCircle.setRoundRect(, shapeSize, shapeSize, shapeSize / );  
  •   
  •   
  • mOutlineRect =  Outline();  
  • mOutlineRect.setRoundRect(, shapeSize, shapeSize, shapeSize / );  

 

给视图设置一个outline(如果为了防止一个视图产生阴影可以设置outline为null):

 

[java] copy?
 

floatingShape.setOutline(mOutlineCircle);  


下图是使用不同eleavation值产生的阴影效果:

bubuko.com,布布扣


下图是不同背景/轮廓产生的阴影和拖拽效果:

bubuko.com,布布扣    bubuko.com,布布扣


Drawable Tinting(着色)


对于Android L还有一个独特的特点就是现在可以定义图片的alpha遮罩,并且可以轻松的使用android:tint属性去调整色调。


下面是一个使用tint属性给背景调整不同颜色的例子:

[html] copy?
 

<  

  •     =  
  •     =  
  •     =  
  •     =>   
  •         ...  
  •         =  
  •         =/>   
  •         ...  
  •         =  
  •         =  
  •         =/>      
  •         ...  
  •         =  
  •         =  
  •         =/> </>  

效果图:
bubuko.com,布布扣






 

Clipping Views(裁剪视图)


可以使用View.setClipToOutline方法去剪切一个视图的outline区域。

只有rectangle,circle, 和round rectangle outlines支持裁剪(Outline.canClip方法用来判断是否可以裁剪)


为了裁剪一个可绘制的视图形状,需要先设置一个outline然后调用View.setClipToOutline方法:

[java] copy?
 

floatingShape.setClipToOutline();  


下面请看一个使用裁剪的例子:

 

[java] copy?
 

int;  

  • Outline mClip =  Outline();  
  • mClip.setRoundRect(margin, margin, clippedView.getWidth() - margin,  
  •         clippedView.getHeight() - margin, margin / );  
  •   
  • clippedView.setOutline(mClip);  
  •   
  • clippedView.setClipToOutline();  

首先创建一个轮廓,给轮廓设置区域大小,添加轮廓到视图上,确认裁剪,效果图如下:

 

bubuko.com,布布扣     bubuko.com,布布扣

因为裁剪视图是一个很耗资源的操作,所以当裁剪一个视图时不要添加动画(为了达到这个效果可以使用Reveal Effect动画,动画篇会介绍)。




总结:


 

我将Material Design分为如下四部分:

主题和布局——ANDROID L——Material Design详解(主题和布局)

视图和阴影

UI控件

动画


本文的视图和阴影非常重要,因为在以后Android L的开发中会经常用到。

当我把Android L所有特性介绍之后就会着手开始写实例Demo了,配合实例Demo相信会更容易理解。


剩余的UI控件动画,我会陆续更新,敬请期待。。

http://site.leshou.com/s/9584077.html
http://site.leshou.com/s/9584083.html
http://site.leshou.com/s/9584089.html
http://site.leshou.com/s/9584094.html
http://site.leshou.com/s/9584097.html
http://site.leshou.com/s/9584111.html
http://site.leshou.com/s/9584122.html
http://site.leshou.com/s/9584125.html
http://site.leshou.com/s/9584128.html
http://site.leshou.com/s/9584134.html
http://site.leshou.com/s/9584155.html
http://site.leshou.com/s/9584161.html
http://site.leshou.com/s/9584167.html
http://site.leshou.com/s/9584173.html
http://site.leshou.com/s/9584178.html
http://site.leshou.com/s/9584198.html
http://site.leshou.com/s/9584203.html
http://site.leshou.com/s/9584208.html
http://site.leshou.com/s/9584211.html
http://site.leshou.com/s/9584213.html
http://site.leshou.com/s/9584236.html
http://site.leshou.com/s/9584241.html
http://site.leshou.com/s/9584243.html
http://site.leshou.com/s/9584248.html
http://site.leshou.com/s/9584253.html
http://site.leshou.com/s/9584279.html
http://site.leshou.com/s/9584284.html
http://site.leshou.com/s/9584287.html
http://site.leshou.com/s/9584290.html
http://site.leshou.com/s/9584295.html
http://site.leshou.com/s/9583393.html
http://site.leshou.com/s/9583806.html
http://site.leshou.com/s/9583814.html
http://site.leshou.com/s/9583817.html
http://site.leshou.com/s/9583823.html
http://site.leshou.com/s/9583827.html
http://site.leshou.com/s/9583838.html
http://site.leshou.com/s/9583857.html
http://site.leshou.com/s/9583859.html
http://site.leshou.com/s/9583863.html
http://site.leshou.com/s/9583866.html
http://site.leshou.com/s/9583884.html
http://site.leshou.com/s/9583889.html
http://site.leshou.com/s/9583892.html
http://site.leshou.com/s/9583896.html
http://site.leshou.com/s/9583909.html
http://site.leshou.com/s/9583930.html
http://site.leshou.com/s/9583935.html
http://site.leshou.com/s/9583937.html
http://site.leshou.com/s/9583940.html
http://site.leshou.com/s/9583944.html
http://site.leshou.com/s/9583971.html
http://site.leshou.com/s/9583999.html
http://site.leshou.com/s/9584003.html
http://site.leshou.com/s/9584009.html
http://site.leshou.com/s/9584017.html
http://site.leshou.com/s/9584048.html
http://site.leshou.com/s/9584049.html
http://site.leshou.com/s/9584053.html
http://site.leshou.com/s/9584057.html
http://site.leshou.com/s/9582679.html
http://site.leshou.com/s/9582680.html
http://site.leshou.com/s/9582681.html
http://site.leshou.com/s/9582682.html
http://site.leshou.com/s/9582684.html
http://site.leshou.com/s/9582885.html
http://site.leshou.com/s/9582891.html
http://site.leshou.com/s/9582894.html
http://site.leshou.com/s/9582900.html
http://site.leshou.com/s/9582921.html
http://site.leshou.com/s/9582934.html
http://site.leshou.com/s/9583191.html
http://site.leshou.com/s/9583192.html
http://site.leshou.com/s/9583193.html
http://site.leshou.com/s/9583195.html
http://site.leshou.com/s/9583197.html
http://site.leshou.com/s/9583265.html
http://site.leshou.com/s/9583267.html
http://site.leshou.com/s/9583268.html
http://site.leshou.com/s/9583271.html
http://site.leshou.com/s/9583274.html
http://site.leshou.com/s/9583314.html
http://site.leshou.com/s/9583318.html
http://site.leshou.com/s/9583325.html
http://site.leshou.com/s/9583327.html
http://site.leshou.com/s/9583330.html
http://site.leshou.com/s/9583359.html
http://site.leshou.com/s/9583366.html
http://site.leshou.com/s/9583375.html
http://site.leshou.com/s/9583386.html
http://site.leshou.com/s/9580742.html
http://site.leshou.com/s/9580744.html
http://site.leshou.com/s/9580747.html
http://site.leshou.com/s/9580749.html
http://site.leshou.com/s/9580750.html
http://site.leshou.com/s/9580765.html
http://site.leshou.com/s/9580766.html
http://site.leshou.com/s/9580767.html
http://site.leshou.com/s/9580769.html
http://site.leshou.com/s/9580770.html
http://site.leshou.com/s/9580784.html
http://site.leshou.com/s/9580785.html
http://site.leshou.com/s/9580787.html
http://site.leshou.com/s/9580788.html
http://site.leshou.com/s/9580791.html
http://site.leshou.com/s/9580808.html
http://site.leshou.com/s/9580810.html
http://site.leshou.com/s/9580812.html
http://site.leshou.com/s/9580814.html
http://site.leshou.com/s/9580815.html
http://site.leshou.com/s/9582060.html
http://site.leshou.com/s/9582117.html
http://site.leshou.com/s/9582120.html
http://site.leshou.com/s/9582124.html
http://site.leshou.com/s/9582125.html
http://site.leshou.com/s/9582390.html
http://site.leshou.com/s/9582393.html
http://site.leshou.com/s/9582399.html
http://site.leshou.com/s/9582401.html
http://site.leshou.com/s/9582409.html
http://site.leshou.com/s/9580736.html
http://site.leshou.com/s/9580735.html
http://site.leshou.com/s/9580734.html
http://site.leshou.com/s/9580731.html
http://site.leshou.com/s/9580730.html
http://site.leshou.com/s/9580724.html
http://site.leshou.com/s/9580723.html
http://site.leshou.com/s/9580722.html
http://site.leshou.com/s/9580721.html
http://site.leshou.com/s/9580719.html
http://site.leshou.com/s/9580713.html
http://site.leshou.com/s/9580712.html
http://site.leshou.com/s/9580711.html
http://site.leshou.com/s/9580710.html
http://site.leshou.com/s/9580709.html
http://site.leshou.com/s/9580186.html
http://site.leshou.com/s/9580185.html
http://site.leshou.com/s/9580182.html
http://site.leshou.com/s/9580180.html
http://site.leshou.com/s/9580178.html
http://site.leshou.com/s/9580162.html
http://site.leshou.com/s/9580160.html
http://site.leshou.com/s/9580157.html
http://site.leshou.com/s/9580143.html
http://site.leshou.com/s/9580131.html
http://site.leshou.com/s/9580105.html
http://site.leshou.com/s/9580099.html
http://site.leshou.com/s/9580094.html
http://site.leshou.com/s/9580086.html
http://site.leshou.com/s/9580081.html
http://site.leshou.com/s/9580059.html
http://site.leshou.com/s/9580056.html
http://site.leshou.com/s/9580049.html
http://site.leshou.com/s/9580027.html
http://site.leshou.com/s/9580012.html
http://site.leshou.com/s/9579882.html
http://site.leshou.com/s/9579876.html
http://site.leshou.com/s/9579868.html
http://site.leshou.com/s/9579863.html
http://site.leshou.com/s/9579858.html
http://site.leshou.com/s/9578444.html
http://site.leshou.com/s/9578429.html
http://site.leshou.com/s/9578422.html
http://site.leshou.com/s/9578410.html
http://site.leshou.com/s/9578406.html
http://site.leshou.com/s/9578373.html
http://site.leshou.com/s/9578360.html
http://site.leshou.com/s/9578353.html
http://site.leshou.com/s/9578345.html
http://site.leshou.com/s/9578311.html
http://site.leshou.com/s/9578293.html
http://site.leshou.com/s/9578279.html
http://site.leshou.com/s/9578266.html
http://site.leshou.com/s/9578258.html
http://site.leshou.com/s/9578245.html
http://site.leshou.com/s/9578220.html
http://site.leshou.com/s/9578199.html
http://site.leshou.com/s/9578179.html
http://site.leshou.com/s/9578167.html
http://site.leshou.com/s/9578155.html
http://site.leshou.com/s/9578136.html
http://site.leshou.com/s/9578113.html
http://site.leshou.com/s/9578107.html
http://site.leshou.com/s/9578100.html
http://site.leshou.com/s/9578080.html
http://site.leshou.com/s/9578038.html
http://site.leshou.com/s/9578027.html
http://site.leshou.com/s/9578010.html
http://site.leshou.com/s/9577997.html
http://site.leshou.com/s/9577974.html
http://site.leshou.com/s/9577937.html
http://site.leshou.com/s/9577886.html
http://site.leshou.com/s/9577878.html
http://site.leshou.com/s/9577865.html
http://site.leshou.com/s/9577843.html
http://site.leshou.com/s/9577103.html
http://site.leshou.com/s/9577099.html
http://site.leshou.com/s/9577076.html
http://site.leshou.com/s/9577061.html
http://site.leshou.com/s/9576662.html

ANDROID L——Material Design详解(视图和阴影)

标签:des   android   style   blog   http   color   io   os   使用   

原文地址:http://www.cnblogs.com/yido9932/p/4030103.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!