Drawable资源——LayerDrawable 图层列表

Drawable资源——LayerDrawable 图层列表

 

1,认识

 

  它表示一种层次化的Drawable集合,通过将不同的Drawable放置在不同的层上面从而达到一种叠加后的效果。系统将会按这些Drawable对象的数组顺序来绘制它们,索引最大的Drawable对象将会被绘制早最上面。

创建XML文件:

           定义LayerDrawable对象的XML文件的根元素为<layer-list.../>,

           该元素可以包含多个<item.../>元素,

文件位置 ︰

         res/drawable/filename.xml

         文件名用作资源 id。

语法

           <?xml version="1.0" encoding="utf-8"?>

           <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

             <item

               android:drawable="@[package:]drawable/drawable_resource"

              android:id="@[+][package:]id/resource_name"

               android:top="dimension"

               android:right="dimension"

               android:bottom="dimension"

               android:left="dimension" />

           </layer-list>

 

2,各属性注解


    (1)<layer-list>  属性

         xmlns:android  字符串。所需。定义 XML 命名空间,

  必须是"http://schemas.android.com/apk/res/android"

  (2)<item> 属性:

         android:id:

                  为该Drawable对象指定一个标识

         android:drawable:

                  指定作为LayerDrawable元素之一的Drawable对象

         android:buttom  

                  它们用于指定一个底部的长度值,用于指定将该drawable

                  对象绘制到目标组件的指定位置。

         android:top

                  它们用于指定一个顶部的长度值,用于指定将该drawable

                  对象绘制到目标组件的指定位置。

         android:left

                  它们用于指定一个左边的长度值,用于指定将该drawable

                  对象绘制到目标组件的指定位置。

         android:right  

                  它们用于指定一个右边的长度值,用于指定将该drawable

                  对象绘制到目标组件的指定位置。

 

3,代码示例

 

(1)activity_layer_drawable_useing.xml

<?xml version="1.0" encoding="utf-8"?>

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"

     >

    <!-- 定义轨道的背景 -->

    <item android:id="@android:id/background"

        android:drawable="@drawable/grow" />

    <!-- 定义轨道上已完成部分的外观-->

    <item android:id="@android:id/progress"

        android:drawable="@drawable/ok" />

</layer-list>

(2)layer_drawable_useing_2.xml

<?xml version="1.0" encoding="utf-8"?>

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item>

        <bitmap

            android:gravity="center"

            android:src="@drawable/icon" />

    </item>

    <item

        android:left="25dp"

        android:top="25dp">

        <bitmap

            android:gravity="center"

            android:src="@drawable/icon" />

    </item>

    <item

        android:left="50dp"

        android:top="50dp">

        <bitmap

            android:gravity="center"

            android:src="@drawable/icon" />

    </item>

</layer-list>

(3)layer_drawable_useing_3.xml

<?xml version="1.0" encoding="utf-8"?>

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item >

        <shape android:shape="rectangle">

            <solid android:color="#0ac39e"/>

        </shape>

    </item>

    <item android:bottom="6dp">

        <shape android:shape="rectangle">

            <solid android:color="#ffffff"/>

        </shape>

    </item>

    <item android:bottom="3dp"

        android:left="3dp"

        android:right="3dp">

        <shape 

            android:shape="rectangle">

            <solid android:color="#ffffff"/>

        </shape>

    </item>

</layer-list>


 

你可能感兴趣的:(android,layerdrawable,Android应用程序资源)