selector.xml无效的解决办法

来源:互联网 发布:淘宝网我要买 编辑:程序博客网 时间:2024/05/21 09:40

错误的selector.xml

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:drawable="@android:color/holo_blue_light"/><item android:drawable="@android:color/holo_blue_dark" android:state_pressed="true"/></selector>

其实selector.xml的文件执行是有顺序的。当每次状态发生变化时,它会先从上往下依次执行。不管state_pressed=”true”和state_pressed=”false”,都会满足上面的第一个条件(没有限制状态),当找到满足的条件后,就不会再向下执行,因为看不到背景颜色变化的效果。解决方法有两种:
1.设置第一个item为state_pressed=”false”

<item android:drawable="@android:color/holo_blue_light" android:state_pressed="false"/><item android:drawable="@android:color/holo_blue_dark" android:state_pressed="true"/>

2.将第一个item和第二个item的位置对换

<item android:drawable="@android:color/holo_blue_dark" android:state_pressed="true"/><item android:drawable="@android:color/holo_blue_light"/>
0 0
原创粉丝点击