level—list设置背景用法

来源:互联网 发布:淘宝网.连衣裙 编辑:程序博客网 时间:2024/05/18 21:39

学习android 中statusbar源码,发现电量图标中使用了<level—list>标签的stat-sys-battery.xml.

<level-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:maxLevel="2" android:drawable="@android:drawable/stat_sys_battery_0" />
    <item android:maxLevel="7" android:drawable="@android:drawable/stat_sys_battery_5" />
    <item android:maxLevel="12" android:drawable="@android:drawable/stat_sys_battery_10" />
    <item android:maxLevel="17" android:drawable="@android:drawable/stat_sys_battery_15" />
    <item android:maxLevel="22" android:drawable="@android:drawable/stat_sys_battery_20" />
    <item android:maxLevel="27" android:drawable="@android:drawable/stat_sys_battery_25" />
    <item android:maxLevel="32" android:drawable="@android:drawable/stat_sys_battery_30" />
    <item android:maxLevel="37" android:drawable="@android:drawable/stat_sys_battery_35" />
    <item android:maxLevel="42" android:drawable="@android:drawable/stat_sys_battery_40" />
    <item android:maxLevel="47" android:drawable="@android:drawable/stat_sys_battery_45" />
    <item android:maxLevel="52" android:drawable="@android:drawable/stat_sys_battery_50" />
    <item android:maxLevel="57" android:drawable="@android:drawable/stat_sys_battery_55" />
    <item android:maxLevel="62" android:drawable="@android:drawable/stat_sys_battery_60" />
    <item android:maxLevel="67" android:drawable="@android:drawable/stat_sys_battery_65" />
    <item android:maxLevel="72" android:drawable="@android:drawable/stat_sys_battery_70" />
    <item android:maxLevel="77" android:drawable="@android:drawable/stat_sys_battery_75" />
    <item android:maxLevel="82" android:drawable="@android:drawable/stat_sys_battery_80" />
    <item android:maxLevel="87" android:drawable="@android:drawable/stat_sys_battery_85" />
    <item android:maxLevel="92" android:drawable="@android:drawable/stat_sys_battery_90" />
    <item android:maxLevel="97" android:drawable="@android:drawable/stat_sys_battery_95" />
    <item android:maxLevel="100" android:drawable="@android:drawable/stat_sys_battery_100" />
</level-list>

代码中使用

        v.setImageResource(R.drawable.stat-sys-battery);
        v.setImageLevel(levle);

即可通过不同的电量设置不同的图标,节省了大量的判断代码

 

 

 

 

 

 

 

 

 

 

 

原创粉丝点击