Ich habe eine ArrayList mit Elementen, die mit einem benutzerdefinierten Adapter verknüpft sind. Die Artikel sind in alphabetischer Reihenfolge. Ich möchte, dass mein ListView in jeder Zeile der ListView maximal vier Elemente enthält, wobei die Zeilen alphabetisch getrennt sind.
Zum Beispiel:
[Hallo] [Krankenhaus] [Hotel] [HotSpot]
[Haus]
[Unmöglich] [unwahrscheinlich]
Somit befinden sich mehrere Elemente in derselben Zeile der ListView.
Gibt es eine Möglichkeit, die Positionsvariable in der getView () - Methode der benutzerdefinierten Adapterklasse zu verwenden, um dies zu erreichen?
Hier ist ein Beispiel, Entschuldigung für die Qualität:
In dem Bild würde der Hintergrundspeicher wie ArrayList diese Namen alphabetisch enthalten.
Sie müssen CustomListView implementieren. auf GetView-Methode des ArrayAdapter Ihres Objekts.
Siehe unten Beispiel:
Es wird dir wirklich helfen.
Viel Spaß. :)
Ja, in der Methode getView () ist einer der Parameter eine Position, über die die entsprechende View zurück gesendet werden kann
%Vor%Platzieren Sie 4 Textansichten in das Layout Ihrer Listenansicht und stellen Sie ihre Werte wie die folgende Methode getView () aus hashMap ein. Sie können den ersten Parameter von getView verwenden, um die Position des ausgewählten Elements von listview zu erhalten. Wenn Sie nichts als Werte als textview.setText ("")
drucken möchten %Vor%