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.
Um die Hervorhebung des ausgewählten Elements beizubehalten und sicherzustellen, dass „td ' die entsprechenden Details anzeigt, können wir Folgendes verwenden:
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.
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
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!