日拱一卒(一)

来源:互联网 发布:李服膺知乎 编辑:程序博客网 时间:2024/05/23 01:34

layer-list:用来多个图层堆叠显示的

在drawable文件夹下创建一个xml文件。比如:background.xml

<pre name="code" class="java"><layer-list xmlns:android="http://schemas.android.com/apk/res/android">     <itemandroid:drawable="@drawable/pic1">         <itemandroid:drawable="@drawable/pic2"> </layer-list>

 

另外在layout文件中指定background属性这样就会加载pic1和pic2这两张图片。

  1. <ImageView   
  2.       ......  
  3.        android:background="@drawable/background"  
  4. /> 

另外还可以使用代码实现:

  1. Resources r = getResources();  
  2. Drawable[] layers = new Drawable[2];  
  3. layers[0] = r.getDrawable(R.drawable.pic1);   
  4. layers[1] = r.getDrawable(R.drawable.pic2);   
  5. LayerDrawable layerDrawable = new LayerDrawable(layers);   
  6. ((ImageView) findViewById(R.id.imageview)).setImageDrawable(layerDrawable); 




level-list:

<level-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:maxLevel="0" android:drawable="@drawable/battery_0" />
    <item android:maxLevel="1" android:drawable="@drawable/battery_1" />
    <item android:maxLevel="2" android:drawable="@drawable/battery_2" />
    <item android:maxLevel="3" android:drawable="@drawable/battery_3" />
    <item android:maxLevel="4" android:drawable="@drawable/battery_4" />
</level-list>

然后在layout中把image view的src设置成已创建好的xml文件 
程序中变换图片时,只需要使用 
imageview.getDrawable().setImageLevel(1);
... 
Android会根据level的值自动选择对应的图片。手机显示剩余电量就是用这个方法来显示不同图片的。

0 0
原创粉丝点击