Может ли ExpandableListView быть встроен в другой макет? - PullRequest
2 голосов
/ 09 марта 2011

Мне бы хотелось, чтобы в моем приложении отображался расширяемый / складываемый список, аналогично тому, как отображаются комментарии для каждого приложения в Маркете (фактически каждый элемент в списке является комментарием в том же формате, что и в Маркете). ). Поскольку элементов списка может быть много, и я не хочу, чтобы пользователь терял кнопки, расположенные под списком, и пользователю может быть неинтересно читать элементы в списке, я хотел бы, чтобы этот список был расширяемым и складным ,

Я посмотрел на расширение BaseExpandableListAdapter, и оно кажется действительно аккуратным, за исключением того факта, что кажется, что список всегда отображается с использованием ExpandableListActivity. Я хотел бы, чтобы список был встроен в страницу, которую уже просматривает пользователь.

Кто-нибудь знает, возможно ли это с помощью BaseExpandableListAdapter или мне нужно использовать совсем другую технику и сам написать весь шаблонный код?

Большое спасибо, Нина

Ответы [ 2 ]

0 голосов
/ 09 марта 2011

Да, нетрудно использовать ListView, ExpandableListView и друзей без их связанной деятельности.

Вам просто нужно позвонить setAdapter() на ExpandableListView после его создания или получения из макета:

ExpandableListView list = (ExpandableListView) findViewById(R.id.listView);
list.setAdapter(myExpandableAdapter);
0 голосов
/ 09 марта 2011

Конечно.Там должно быть никаких проблем.ExpandableListActivity - это просто тонкий шпон над ExpandableListView (фактически, любой макет с ExpandableListView с идентификатором android.R.id.list. Вы можете использовать ExpandableListActivity со своим собственным пользовательским макетом или определить свою собственную деятельностьи отказаться от (относительно немного) удобных методов, которые ExpandableListActivity обеспечивает.

...