2 zxd 72 zxd_72 于 2012.10.12 14:22 提问

Android中点击 ImageButton后状态没有改变

我的问题是,点击ImageButton后图像也不会改变。当我单击,或者触摸按钮,仍然显示相同的图像。这是代码片段:

<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
 android:state_focused="true"
 android:state_pressed="false"
 android:drawable="@drawable/pushed" />
<item
 android:state_focused="true"
 android:state_pressed="true"
 android:drawable="@drawable/pushed" />
<item
 android:state_focused="false"
 android:state_pressed="true"
 android:drawable="@drawable/pushed" />
<item  
 android:drawable="@drawable/default" />
</selector>

我在main.xml中调用了selector,Imagechoice.xml是selector文件

android:background="@drawable/imagechoice"

3个回答

ueryueryuery
ueryueryuery   2012.10.15 17:52
已采纳

首先确定你的ImageButton的clickable是否为true,仍然不行,可以使用排除法,一个一个地增加selector中的item进行排查。

myq_26
myq_26   2012.10.12 15:33
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:drawable="@drawable/btn_off" />
<item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/btn_pressed" />
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/btn_pressed" />
<item android:drawable="@drawable/btn_off" />
</selector>
zhujiayi1234
zhujiayi1234 这位老兄的写法是对的,感谢。我第一次用selector也没效果,结果闹了个乌龙,按下的那张图片颜色变化不明显,像没按一样。
大约一年之前 回复
hcg_21
hcg_21   2012.10.12 17:41

XML可以简化使用级联性质的状态匹配。

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"
          android:drawable="@drawable/pushed"
          />
    <item android:state_focused="true"
          android:drawable="@drawable/pushed"
          />
    <item android:drawable="@drawable/default"
          />
</selector>
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!