setItemChecked (int position, boolean Wert) nicht funktioniert?
Ich habe eine listview, die angepasst ist, um ein Bild anzuzeigen und 2 textview. Nur ich wollte einfach highlight eine die Sache von meiner Liste.
Erstens, gehe ich mit setSelection-Methode des listview-das habe ich endlich herausgefunden, es ist nicht so, wie es ist funktioniert nicht im touch-Modus.
So, ich habe einige Suche und fand, dass ich brauchen würde, um zu verwenden setItemChecked Methode. So, ich mache ein Status-Liste Farbe.
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:drawable="@color/checkbox_bg_fcs" />
<item android:drawable="@color/WHITE" />
</selector>
Habe ich es benutzt, um den hintergrund Farbe meiner angepassten Liste.
Aus der Liste Aktivität, rufe ich setItemChecked(position,true), um eine bestimmte index meiner listview.
Leider, es scheint nicht zu funktionieren für mich. Gibt es etwas fehlt? Hat jemand Glück mit ihm?
Hinweis:**, ich hab Sie Daten abrufen, die für die Listen-Ansicht vom Netzwerk. Ich mache setItemChecked erst nachdem ich die Daten in meine listview.
Mein listview wird im single-choice-Modus zu.
- Zeigen Sie die Umsetzung der setItemCheck Veranstaltung.
- listview.setItemChecked(1, true); Ist das, was Sie brauchen? Der Anruf ist in onResume(). Ich habe versucht mit vielen Positionen (0,1,2,3,...)
- Ich bin einfach nur neugierig. Was bedeutet
<item android:drawable="@color/WHITE" />
tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich fürchte, dass es keine einfache Möglichkeit zu tun, dass in den Android-Framework.
Um die setSelection(...) arbeiten, Ihre Ansicht zu implementieren hat die follogin Schnittstelle: android.- widget.Überprüfbar ist
Sind Sie wahrscheinlich mit ein paar layout für die Ansicht (ein Bild und 2 textview in einem LinearLayout vielleicht?), die nicht Umsetzung der Abfragbare Schnittstelle.
Was Sie tun können, ist erstellen Sie eine benutzerdefinierte View-Klasse implementiert, die Überprüfbar ist.
Schauen Sie sich den link unten für eine abfragbare LinearLayout:
http://tokudu.com/2010/android-checkable-linear-layout/
Wenn Sie möchten, um den hintergrund zu ändern, als schreiben Sie die Methode setChecked zu tun, was Sie wollen.
Sehr einfaches Beispiel:
set für Ihre Liste Zeilen-hintergrund-Auswahl, die Ressource für state_activated:
android:choiceMode="singleChoice"
versuchen, einschließlich der
android:state_enabled
Attribut als auch.