Android之Drawable-LevelListDrawable

注意:本篇文章是本人阅读相关文章所写下的总结,方便以后查阅,所有内容非原创,侵权删。

本篇文章内容来自于:
1.Android开发艺术探索 任玉刚
2.领略千变万化的Android Drawable (一)

目录

  1. LevelListDrawable
    --8.1 什么是LevelListDrawable
    --8.2 LevelListDrawable语法/属性
    --8.3 LevelListDrawable使用案例

8. LevelListDrawable

8.1 什么是LevelListDrawable

LevelListDrawable对应于标签,也表示一个Drawable的集合,但集合中的每个Drawable都一个等级。根据不同等级,LevelListDrawable会切换到相应的Drawable。

8.2 LevelListDrawable语法/属性



    //标签中的每个Item各表示一个Drawable,并有与之对应的等级
    //而等级则是由android:maxLevel和android:minLevel所决定的,其等级范围是0-10000,最小为0,默认值,最大则为10000
    

8.3 LevelListDrawable使用案例

大概相似效果:


Android之Drawable-LevelListDrawable_第1张图片

第一步:定义xml文件



    
    
    
        
            
        
    

第二步:使用

  • 当作为view的背景时,则通过Drawable的setLevel来设置不同的等级;
    ivShow.getDrawable().setLevel(3);

  • 当作为ImageView的前景时,则还可通过Imageview的setImageLevel来切换Drawable。
    ivShow.setImageLevel(0);

public class MainActivity extends BaseActivity {

    @BindView(R.id.btn_base64)
    Button btnBase64;
    @BindView(R.id.iv_show)
    ImageView ivShow;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ButterKnife.bind(this);
        ivShow.setImageResource(R.drawable.levellist_demo);
        ivShow.setImageLevel(0);
    }

    @OnClick(R.id.btn_base64)
    public void onViewClicked() {
        ivShow.setImageLevel(3);
    }
}

你可能感兴趣的:(Android之Drawable-LevelListDrawable)