前言
LayerDrawable包含了一個Drawable數組,系統會按照Drawable對象數組的順序來繪製它們,索引最大的對象將會被繪製在最上面。
定義LayerDrawable對象的XML文件的根元素是:<layer-list.../>
,該元素可以包含多個<item../>
元素,該元素可以指定如下屬性:
* android:drawable:指定作爲LayerDrawable元素之一的Drawable對象。
* android:id:爲該Drawable對象指定一個標識。
* android:buttomltoplleftlbutton:它們用於指定一個長度值,用於指定將該Drawable對象繪製到目標組件的指定位置。
實例:定製SeekBar拖動條的外觀
1,在res–>drawable目錄下右鍵new一個Drawable Resource File,根元素選擇layer-list:
2,定義兩個item,其中第一個爲SeekBar拖動前的默認背景,後一個爲拖動後的背景:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@android:id/background"
android:drawable="@mipmap/seekbar_default" />
<item
android:id="@android:id/progress"
android:drawable="@mipmap/seekbar_selected" />
</layer-list>
- 3,定義progerssDrawable爲我們剛剛自己定義的Drawable:
<SeekBar
android:progressDrawable="@drawable/my_seekbar"
android:layout_width="match_parent"
android:layout_height="40dp" />
運行結果: