Aktiviert das aktivierte Element in ListView programmgesteuert

8

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:

%Vor%

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.

    
Bart Friederichs 21.01.2014, 08:43
quelle

3 Antworten

17

Sie können Artikel mit folgendem Code auswählen:

%Vor%     
Shayan Pourvatan 21.01.2014, 08:50
quelle
1

Diese Methode funktioniert für mich

%Vor%     
karan vs 08.09.2014 14:31
quelle
0

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

    
Lingasamy Sakthivel 21.01.2014 08:49
quelle

Tags und Links