Verwenden Sie diese Methode, um Selektor zu verwenden
Erstellen Sie ein XML in res/drawable
und legen Sie die Farbe für verschiedene Ereignisstatus fest br>
Dann dieses XML als Selector
Zum Beispiel: res/drawable/selector.xml
Dann deklariere grau in your res\values\colors.xml
Stellen Sie dann den Wahlschalter auf
%Vor% Danke für Ihr Beispiel, es hat auf diese Weise besser funktioniert ... Versuchen Sie es stattdessen.
Erstellen Sie ein XML in res/drawable
und legen Sie die Farbe für verschiedene Ereignisstatus fest / p>
Dann dieses XML als Selector
Zum Beispiel: res/drawable/selector.xml
Dann deklariere grau in deinem res\values\strings.xml
Stellen Sie dann den Wahlschalter auf
%Vor%Danke für Ihr Beispiel, es hat auf diese Weise besser funktioniert ... Versuchen Sie es stattdessen. Erstellen Sie ein XML in %code% und legen Sie die Farbe für verschiedene Ereignisstatus fest / p>
Dann dieses XML als Selector
Zum Beispiel: %code%
Dann deklariere grau in deinem %code%
%Vor%Stellen Sie dann den Wahlschalter auf
%Vor% Verwenden Sie diese Methode, um Selektor zu verwenden
Erstellen Sie ein XML in %code% und legen Sie die Farbe für verschiedene Ereignisstatus fest br>
Dann dieses XML als Selector
Zum Beispiel: %code%
Dann deklariere grau in %code%
%Vor%Stellen Sie dann den Wahlschalter auf
%Vor%Sie müssen
festlegen %Vor%bis
%Vor%Antworten hier funktionieren nicht für benutzerdefinierte Ansichten in ListView wegen ungültigen Hintergrunds. Die Lösung besteht darin, den Hintergrund jedes Elements auf %code% zu setzen. Hier ist ein Beispiel:
%Vor%Danach funktioniert StateListDrawable wie erwartet.
Quelle: Ссылка ,
Ich habe eine Listview-Aktivität, in der ich die Selektorfarbe mit dem folgenden Code einstelle. Aber wenn ich ein Element auswähle, wird die ganze Liste mit der Selektorfarbe hervorgehoben, die ich nicht möchte. Wo mache ich falsch? Jede Hilfe wird geschätzt.
%Vor% Sie müssen res / drawable / selector.xml nicht erstellen.
Fügen Sie diese Zeilen einfach in Ihre onCreate-Methode ein:
Leider habe ich nicht genug Reputation, um Kommentare zu früheren Antworten hinzuzufügen.
Antworten hier funktionieren nicht für benutzerdefinierte Ansichten in ListView wegen ungültigen Hintergrunds. Die Lösung besteht darin, den Hintergrund jedes Elements auf android:background="?android:attr/activatedBackgroundIndicator"
zu setzen. Hier ist ein Beispiel:
Danach funktioniert StateListDrawable wie erwartet.
Quelle: Ссылка ,