我有一个按钮,我希望它有不同的背景,当我设置:国家列表绘制和禁用状态
android:enabled="false"
这里有一个背景资源文件:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false"
android:drawable="@drawable/bttn_orange_normal" /> <!-- pressed -->
<item android:state_pressed="true"
android:drawable="@drawable/bttn_orange_selected" /> <!-- focused -->
<item android:state_enabled="false" android:drawable="@drawable/bttn_grey_disabled"/>
<item android:state_enabled="true" android:drawable="@drawable/bttn_orange_normal"/>
</selector>
但按钮仍正常当它被禁用时的背景。 我错过了什么?
尝试在第一项一款Android添加:state_enabled =“真” –
按下虚假不按。另外,不指定状态也不意味着错误。这意味着它不被考虑。所以,你的规则在这里意味着任何时候一个按钮没有按下,它有正常的BG。 – njzk2
您必须删除最后一项的** android:state_enabled =“true”**,这样所有其他状态将具有** @ drawable/bttn_orange_normal **。一旦你的按钮变成了双色,它就会在正确的位置得到** @ drawable/bttn_grey_disabled **。此外,您必须删除具有** android:state_pressed =“false”**的行,因为它会覆盖*** android:state_enabled =“false”的定义*** – alexscmar