Level List类型的图形用来管理一组可进行切换的图片。
系统会根据level值来自动匹配对应的图片,如手机wifi的信号强度图标,电量剩余图标,就是通过Level List类型来显示的。
语法
1 |
|
- maxLevel:匹配的最大值
- minLevel:匹配的最小值
- drawable:匹配的图片
用法
基本用法
在drawable文件夹中新建一个xml文件,然后其它控件通过background引用,ImageView还可以通过src引用,level最开始匹配的值是0。
示例:
1 |
|
引用方法
- xml文件里设置,或者使用代码设置
1 | <!-- ImageView可通过src或background设置 --> |
- 代码控制Level切换图片
ImageView 如果是通过src引用的,可通过getDrawable获取LevelListDrawable对象,也可直接通过setImageLevel方法直接设置level值
1 | /** |
其他控件如果是通过background引用的,控件可直接通过getBackground方法获取LevelListDrawable对象
1 | LevelListDrawable levelListDrawable = (LevelListDrawable) mView.getBackground(); |
注意
item元素级别不能出现负数
level-list中item放置的前后顺序需要注意,系统会从上往下匹配,如果查找到的item符合当前的状态,则不会再继续向下查找其它item
如下:设置Level为2,则第一个item匹配,就不匹配第二个item,顺序很重要
1 |
|