In diesem Beispiel, das Sie Sie sagen, verwenden Sie als Referenz eine Klasse dort ExpandableListAdapter
genannt wird. Sie müssen Ihre eigene Klasse erstellen, die BaseExpandableListAdapter
erweitert und diese verwenden, um die Einträge in Ihrer Liste zu erstellen. Die beiden Methoden müssen Sie das Layout der Einträge konzentrieren sich auf ändern sind:
public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent)
und
public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent)
In diesen beiden im Beispiel sie getGenericView()
nennen, die nur eine TextView
zurückgibt, aber Du kannst alles tun, was du willst. Sie können ein XML-Layout inflationieren oder einfach einen Code direkt dort erstellen und zurückgeben. Es ist wirklich nicht anders als mit einem normalen ListAdapter
.
Wenn Sie die Standard erweitert Indikator außer Kraft zu setzen Sie Ihre eigenen Stateful ziehbar wie folgt erstellen:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_expanded="true"
android:drawable="@drawable/expander_ic_maximized" />
<item
android:drawable="@drawable/expander_ic_minimized" />
</selector>
und setzen, dass, wo immer Sie in Ihrem Layout wollen und es die ID @android:id/groupIndicator
geben. Ich denke, das sollte funktionieren. Lass mich wissen, was du findest.
Hallo, Vielen Dank für die Antwort. Ich werde das jetzt ausprobieren. Kannst du auch bitte sagen, wie ich die Position der Expand/Collapse-Taste von extrem links nach rechts ändern kann. – user264953
Ich habe eine Antwort geschrieben, die möglicherweise funktioniert. – CaseyB