LevelList Drawable用法

作者: 奔跑的图腾 | 来源:发表于2018-03-24 10:02 被阅读0次

    XML定义Drawable的一种,以<level-list>作为根元素,其间可包含任意多个<item>节点,每一个<item>节点包含一个drawable对象和maxLevel与minLevel值

     <?xml version="1.0" encoding="utf-8"?>
        <level-list
            xmlns:android="[http://schemas.android.com/apk/res/android](http://schemas.android.com/apk/res/android)" >
            <item
                android:drawable="@drawable/drawable_resource"
                android:maxLevel="integer"
                android:minLevel="integer" />
        </level-list>
    
    注意:item元素级别里面不能出现负数,只能是正整数,并且要么是升序,要么是倒序,顺序乱了不起作用

    向LevelListDrawable对象提供一个Level值后,LevelListDrawable对象就会从前往后查看每一个<item>,当某个<item>节点的Level范围满足提供的那个Level值后,就会返回该<item>结点里指定的drawable。并且不会继续往后找。所以定义这个LevelListDrawable时要注意各个<item>的顺序

    使用场景:
    可以用来做进度条、音量调节等效果。

    比如:
    当我们将一个LevelListDrawable作为一个View的background后,可以通过View的getBackground()方法获取这个Drawable对象,然后调用这个Drawable对象的setLevel()方法,提供不同的Level值,就可以改变View的背景。
    ImageView组件还提供了setImageLevel()方法来快捷设置android:src指定的LevelListDrawable的Level值(android:backgroudn指定的背景还是要通过View的形式来更改)

    相关文章

      网友评论

        本文标题:LevelList Drawable用法

        本文链接:https://www.haomeiwen.com/subject/ugfqcftx.html