美文网首页
android 代码实现 selector StateListD

android 代码实现 selector StateListD

作者: proud2008 | 来源:发表于2020-08-21 12:54 被阅读0次

    分析了解析过程后,其中selector.xml里可以直接用代码实现,比如在自定义View的时候就可以用到。

    StateListDrawable stateListDrawable = new StateListDrawable();

        //注意该处的顺序,只要有一个状态与之相配,背景就会被换掉
        //所以不要把大范围放在前面了,如果sd.addState(new[]{},normal)放在第一个的话,就没有什么效果了
        stateListDrawable.addState(new int[]{android.R.attr.state_pressed, android.R.attr.state_enabled}, getDrawable(android.R.attr.state_pressed));
        stateListDrawable.addState(new int[]{-android.R.attr.state_enabled}, getDrawable(-android.R.attr.state_enabled));
        //没有任何状态时显示的图片,就设置空集合,默认状态
        stateListDrawable.addState(new int[]{}, getDrawable(android.R.attr.state_enabled));
    

    其中“-”表示对应的属性为false。

    来自链接

    相关文章

      网友评论

          本文标题:android 代码实现 selector StateListD

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