Heim > Java > javaLernprogramm > Wie kann ich das in der ListView ausgewählte Element in Android hervorgehoben halten?

Wie kann ich das in der ListView ausgewählte Element in Android hervorgehoben halten?

Susan Sarandon
Freigeben: 2024-11-07 06:03:03
Original
510 Leute haben es durchsucht

How to Keep ListView Selected Item Highlighted in Android?

Ausgewähltes ListView-Element in Android hervorgehoben halten

In der Android-Entwicklung ist es oft wünschenswert, das ausgewählte Element in einer ListView hervorzuheben und gleichzeitig Details anzuzeigen des ausgewählten Elements in einer separaten ListView. Dieser Artikel befasst sich mit einem häufigen Problem im Zusammenhang mit diesem Szenario.

Problem:

Wenn ein Benutzer ein Element in einer ListView (lv_cli) auswählt, werden die Details des ausgewählten Clients angezeigt sollte in einer separaten ListView (lv_cli_det) angezeigt werden. Allerdings verliert dabei das vom Benutzer ausgewählte Element in lv_cli seine Hervorhebung.

Lösung:

Die Lösung liegt in der Verwendung des Attributs android:choiceMode="singleChoice". im XML-Layout. Dieses Attribut gibt das Auswahlverhalten für die ListView an, sodass jeweils nur ein Element ausgewählt werden kann. Der Hintergrund des ausgewählten Elements wird automatisch mit dem Attribut android:listSelector="#666666" hervorgehoben.

Code:

<ListView
    android:id="@+id/cli_lista"
    android:layout_width="512dp"
    android:layout_height="wrap_content"
    android:fadeScrollbars="false"
    android:choiceMode="singleChoice"
    android:listSelector="@color/my_selector" >
</ListView>
Nach dem Login kopieren

Alternativ können Sie festlegen Diese Attribute programmgesteuert mithilfe der Methoden setSelector() und setChoiceMode() der ListView-Klasse.

Bei diesem Ansatz bleibt das ausgewählte Element in lv_cli hervorgehoben, während die Details des ausgewählten Clients in lv_cli_det angezeigt werden.

Wichtiger Hinweis:

Es ist wichtig, Ansichtshintergründe nicht direkt als Reaktion auf onItemClick-Ereignisse zu verwalten. Da es sich bei Ansichten um temporäre Objekte handelt, kann dieser Ansatz zu unvorhersehbarem Verhalten führen, wenn Elemente aus der Ansicht gescrollt und wiederverwendet werden.

Das obige ist der detaillierte Inhalt vonWie kann ich das in der ListView ausgewählte Element in Android hervorgehoben halten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage