View轉載請註明 http://blog.csdn.net/eclipsexys 翻譯自Developer Android,時間倉促,有翻譯問題請留言指出,謝謝
html
材料設計引入了深度的UI元素。深度幫助用戶瞭解每個元素的相對重要性。以及集中注意力於手頭的任務。 android
Elevation也很是有建立動畫。當中的小部件臨時超越視圖平面運行某些操做的時候。eclipse
一個視圖中的Z值有兩個組成部分,高度和翻譯。仰角是靜態份量和翻譯是用於動畫:
ide
Z = elevation + translationZ
佈局
設置在佈局定義視圖的高度,使用android:elevation屬性。設置在活動的代碼視圖的高度,使用View.setElevation()方法。
動畫
要設置視圖的轉換。使用View.setTranslationZ()方法。
新ViewPropertyAnimator.z()和ViewPropertyAnimator.translationZ()方法,使您可以輕鬆地製做動畫的View elevation。欲瞭解不少其它信息,請參閱ViewPropertyAnimator和物業動畫開發者指南的API參考。
spa
您也可以使用StateListAnimator以聲明方式指定這些動畫。
這是狀況下,狀態變化觸發動畫,當用戶按下一個button,像特別實用。欲瞭解不少其它信息,請參見動畫視圖狀態更改。
.net
翻譯
Z值與X和Y值具備一樣的測量單位。
一個視圖的背景繪製的邊界決定了其影子的默認形狀。Outlines表示圖形對象的外部形狀,並限定了波紋區域的觸摸反饋。設計
考慮這個View,與背景繪製的定義:
<TextView android:id="@+id/myview" ... android:elevation="2dp" android:background="@drawable/myrect" />
<!-- 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:
您可以建立橢圓形和矩形輪廓使用大綱類中的方法圓角。默認綱要提供者的意見獲得從視圖的背景輪廓。爲了防止鑑於蒙上陰影,設置其輪廓提供商爲null。
裁剪View,您可以輕鬆地更改視圖的形狀。你可以改變視圖一致性與其它設計元素或改變的圖的形狀,以響應用戶輸入。您可以剪輯,以便使用View.setClipToOutline()方法仍是Android的輪廓區域:clipToOutline屬性。
僅僅有矩形,圓形和圓角矩形輪廓支撐剪裁,如由Outline.canClip()方法來肯定。 夾視圖到繪製的形狀。設置繪製的視圖的背景(如上圖所看到的),並調用View.setClipToOutline()方法。 剪裁View是昂貴的操做,因此不要動畫。你用它來夾視圖的形狀。爲了達到這個效果,請使用顯示效果動畫。