Многоуровневое представление: расширяемый список просмотра - PullRequest
3 голосов
/ 12 апреля 2011

Я пытаюсь написать многоуровневое дерево. Я посмотрел на расширяемый список, но он поддерживает только два уровня. Я посмотрел на другие вопросы (SO) и сообщения, и самое многообещающее сообщение, которое я нашел, это http://mylifewithandroid.blogspot.com/2011/02/3-level-expandable-lists.html

Я понимаю, что мне придется написать что-то нестандартное для обработки дерева нескольких уровней. Каков наилучший рекомендуемый подход? Могу ли я добавить exapandablelistview как ребенка в exapanablelistview ??

Спасибо

Ответы [ 2 ]

1 голос
/ 12 апреля 2011

Это возможно, но это сделало бы структуру GUI слишком сложной для реализации.

Во-первых, вы должны знать, что элементы, отображаемые из ExpandableListView, задаются как BaseExpandableListAdapter.Вам необходимо спроектировать и реализовать то же количество адаптеров, что и для элементов уровня 2, чтобы списки уровня 3 могли корректно отображаться для каждого элемента уровня 2.

Я бы предложил вам перепроектировать графический интерфейс,Многоуровневый ExpandableListView не только усложнит код, но и испортит экран.

1 голос
/ 12 апреля 2011

Вы можете достичь n-уровня ExpandableListView, если используете его с вашим пользовательским BaseExpandableListAdapter.

В этом расширенном адаптере вы переопределяете

public View getGroupView(int groupPosition, boolean isExpanded, 
    View convertView, ViewGroup parent)

метод, назначьте экземпляр BaseExpandableListAdapter для convertView и верните его.

Если вы переопределили все необходимые методы в вашем адаптере, это должно сработать.

...