elevation是構成控件陰影的基本屬性。經過設置較高的Z值能夠接受更大的陰影,陰影只能投射到Z=0的平面上。android
控件的Z值,是由兩個值組成的:高度和位移。高度是固有的屬性,位移能夠用於建立動畫。佈局
Z = elevation + translationZ動畫
改變elevation的方法:spa
View.setElevation
新的 ViewPropertyAnimator.z 和
ViewPropertyAnimator.translationZ方法可讓你很簡單的
code
爲控件建立一些動畫。
xml
控件背景圖的邊緣,會默認做爲這個控件的陰影。Outlines 會根據控件的形狀來生成陰影,並生成觸摸反饋效果。blog
用於控件的背景圖,也會用於生成陰影圖。圖片
下面是一個例子:ip
<TextView android:id="@+id/myview" ... android:elevation="2dp" android:background="@drawable/myrect" />
背景圖:io
<!-- res/drawable/myrect.xml -->
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="#42000000" />
<corners android:radius="5dp" />
</shape>
能夠在代碼中經過View.setOutline方法設置陰影圖片
經過 View.setClipToOutline方法能夠能夠裁剪控件的輪廓。只支持矩形,圓形和橢圓。能夠經過
Outline.canClip方法來檢測是否支持裁剪。
經過 View.setClipToOutline裁剪的圖片設置爲控件的陰影圖片。