Android Mastering ExpandableListView WTF

EisKaffee

Mitglied
Hi ;(

Kennt sich hier jemand wirklich mit der ExpandableListView aus?

Hab diverse Tutorials besucht und schon zahlreiche Versuche hinter mir -
aber wie setzte ich in den Childviews die Checkboxes und wie halte ich
deren Status fest :rtfm: - ich komm da einfach nicht weiter.
Möchte gerne das Prinzip verstehen.
Hab auch das Video zur Google I/O angesehen hmmm :rtfm:

https://www.youtube.com/watch?v=wDBM6wVEO70

Also ELV an sich ist mit Daten in Groupitem und Childitem gefüllt.

Es gibt ja wohl die getchildview bzw. notifyDataSetchange

Möglichkeit wäre auch setonclicklistener

Wer hat davon Ahnung? :popcorn:
 
Zuletzt bearbeitet:

dzim

Top Contributor
Ich hab mich mit der bescheuerten API schon mal auseinandergesetzt... Aber es war ein Pain-in-the-Arse... :-/
Was genau willst du wissen?

Ich habe damals das meiste im Adapter gemacht (ich erweitere dazu BaseExpandableListAdapter). Ich habe mir die darzustellenden Daten erst einmal in ein "Tree"-Objekt gelegt, so konnte ich ArrayAdapter und #getGroupCount einfach implementieren. #getGroupId war bei mir das Ordinal der enum, die in meinem "Tree" an der gesuchten Stelle lag. #hasStableIds war durch die enums immer true. Und #getChild, #getChildId sowie #getChildrenCount (pro Group) waren ebenfalls straight forward.

#getGroupView und #getChildView sind mehr oder weniger gewöhnliche #getView-Implementierungen, wie man sie schon kennt. Einzig ich kam noch auf den Trichter, dass die Children noch weitere Sub-Children haben können (weil alles andere ja noch nicht genug Arbeit war...).

Bezüglich der Klicks: Ich habe in den ChildViews einen Listener (bei mir onCheckChanged, da ich dort Check-Boxen habe) auf den dort dargestellten View gelegt und dort drin auch #notifyDataSetchange aufgerufen.
 

Neue Themen


Oben