Android Drawable 关于selector中state_pressed="true"的位置顺序

时间:2014-06-14 15:27:57   收藏:0   阅读:705

界面中有一个按钮使用这样的样式:

 

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape>
            <corners android:radius="10dp"/>
            <solid android:color="#ff0099ff"/>
        </shape>
    </item>
    <item android:state_pressed="true">
        <shape>
            <corners android:radius="5dp"/>
            <solid android:color="#ff063c91"/>
        </shape>
    </item>
</selector>

会发现按钮被点击之后颜色未变,原来是press="true"的位置颠倒了,改为如下即可:

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <shape>
            <corners android:radius="5dp"/>
            <solid android:color="#ff063c91"/>
        </shape>
    </item>
    <item>
        <shape>
            <corners android:radius="10dp"/>
            <solid android:color="#ff0099ff"/>
        </shape>
    </item>
</selector>

也就是两个Item标签更换一下位置。
其实这就有点类似于switch语句,最后item没有属性就代表default

Android Drawable 关于selector中state_pressed="true"的位置顺序,布布扣,bubuko.com

原文:http://www.cnblogs.com/wuyou/p/3788075.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!