Heim  >  Artikel  >  Java  >  Wie behalte ich die Hervorhebung von Listenelementen bei und zeige die korrekten Details in Android ListView an?

Wie behalte ich die Hervorhebung von Listenelementen bei und zeige die korrekten Details in Android ListView an?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-09 21:31:021016Durchsuche

How to Keep List Item Highlight and Display the Correct Details in Android ListView?

So pflegen Sie die Hervorhebung von Listenelementen in der Android-ListView

Problemstellung

In einer Android-Anwendung haben wir zwei ListViews: Eine zeigt eine Liste von an Clients ('t') und der andere zeigt Details des ausgewählten Clients ('td'). Wenn jedoch ein Kunde in „t“ ausgewählt wird, verschwindet die Hervorhebung und „td“ zeigt nicht die richtigen Informationen an.

Lösung

Um die Hervorhebung des ausgewählten Elements beizubehalten und sicherzustellen, dass „td ' die entsprechenden Details anzeigt, können wir Folgendes verwenden:

  1. Deklarieren Sie die folgenden Attribute im relevanten ListView-XML Elemente:

    android:choiceMode="singleChoice"
    android:listSelector="#666666"

    Dies ermöglicht die Auswahl einzelner Elemente und wendet eine Hintergrundfarbe auf das ausgewählte Element an.

  2. Legen Sie diese Eigenschaften programmgesteuert in Ihrem fest Java Code:

    listView.setChoiceMode(AbsListView.CHOICE_MODE_SINGLE);
    listView.setSelector(R.drawable.selector_background); // You can specify a custom selector Drawable

Erläuterung

  • android:choiceMode="singleChoice" ermöglicht die gleichzeitige Auswahl nur eines Elements.
  • android:listSelector gibt die Hintergrundfarbe an, die auf die Auswahl angewendet werden soll item.
  • listView.setSelector() und listView.setChoiceMode() ermöglichen es Ihnen, den Selektor bzw. den Auswahlmodus programmgesteuert festzulegen.

Zusätzliche Hinweise

Das ist es Es ist wichtig zu beachten, dass die direkte Manipulation des Hintergrunds einer Ansicht, wie in Ihrem ursprünglichen Ansatz versucht, nicht empfohlen wird. Beim Scrollen der Liste werden Ansichten möglicherweise wiederverwendet, was zu Inkonsistenzen bei der Hervorhebung und falschen Datenaktualisierungen führt. Durch die Verwendung der oben beschriebenen geeigneten Methoden können Sie die Hervorhebung des ausgewählten Elements beibehalten und sicherstellen, dass „td“ genaue Details anzeigt.

Das obige ist der detaillierte Inhalt vonWie behalte ich die Hervorhebung von Listenelementen bei und zeige die korrekten Details in Android ListView an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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