Ich habe ein einfaches ListView
mit einigen Elementen, bei denen setChoiceMode
auf ListView.CHOICE_MODE_SINGLE
gesetzt ist, was bedeutet, dass wenn ich ein Element berühre, es markiert ist. Auf diese Weise kann der Benutzer sehen, welche Menüauswahl (das ListView
ist ein Menü) gewählt wurde:
Allerdings möchte ich diese Auswahl aus dem Code ändern (nicht durch Berühren). Ich habe es versucht:
%Vor% aber es scheint keine Wirkung zu haben. Wahrscheinlich, weil Auswahl und Aktivierung unterschiedliche Konzepte sind. Es ist keine setActivated(int)
-Methode verfügbar.
Die Dokumentation sagt If in touch mode, the item will not be selected but it will still be positioned appropriately
.
Sie müssen also ListView.setItemChecked(int position, boolean checked)
method als listView.setItemChecked(position, true)
verwenden, um die Position als ausgewählt festzulegen