Ich haben einen Knopf, und ich möchte es anderen Hintergrund hat, wenn ich gesetzt:Staat Liste ziehbar und deaktivierten Zustand
android:enabled="false"
Hier Ressource-Datei für den Hintergrund sind:
<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>
Aber Taste hat noch normal Hintergrund, wenn es deaktiviert ist. Was fehlt mir?
Versuch hinzufügen auf dem ersten Artikel Abschnitt android: nicht gedrückt state_enabled = „true“ –
gedrückt false . Auch bedeutet das nicht, einen Staat zu spezifizieren, auch nicht falsch. Es bedeutet, dass es nicht berücksichtigt wird. Also, Ihre Regel bedeutet hier jedes Mal, wenn ein Knopf nicht gedrückt wird, hat es das normale bg. – njzk2
Sie müssen den ** android: state_enabled = "true" ** des letzten Elements löschen, so dass alle anderen Status die ** @ drawable/bttn_orange_normal ** haben. Sobald die Schaltfläche deaktiviert ist, wird das ** @ drawable/bttn_grey_disabled ** an der richtigen Stelle angezeigt. Außerdem müssen Sie die Zeile mit dem ** android: state_pressed = "false" ** entfernen, da sie die Definition von *** android überschreibt: state_enabled = "false" *** – alexscmar