Подскажите, как поставить GridView в ListView (у меня много проблем с созданием адаптера) - PullRequest
0 голосов
/ 31 августа 2018

Это проект, который я хочу реализовать.

Теперь, когда я в процессе, я завершил настройку адаптера (расширяет ArrayAdapater (Site)), который соединяет gridView с элементом в GridView. Элементы в элементах gridview, которые я использую, содержатся в массиве с именем ArrayList (Site), а объект с именем Site содержит одну строковую переменную (имя сайта), один URL-адрес (URL-адрес сайта), один ресурс изображения переменной int). У меня есть три типа gridView, которые содержат информацию о нескольких сайтах. Итак, я хочу поместить каждое Gridview как элемент в ListView. Если вы поместите имя каждого типа GridView в заголовок каждого ListView и щелкнете по соответствующему заголовку, вы увидите, что отображается соответствующий GridView. Итак, я хочу знать, как создать адаптер, который использует ArrayListAdapter, который я использую, чтобы снова связать GridView с пользовательским адаптером с элементом ListView.

Я был бы признателен, если бы вы посоветовали мне варианты, которые я пробовал, но не смог. Буду также признателен, если вы дадите мне знать, какой тип адаптера вам нужно настроить.

[Как я пытался и потерпел неудачу]

1] Использование ExpandableList и ExpandableListAdapter

  • Я пытался несколько раз, и когда я нажал List, он вышел на дизайн ListView, а не на дизайн GridView, и сам GridView был встроен в него несколько раз.

2] Создание ExpandableGridView

  • Я просматривал несколько раз и обнаружил, что ExpandableGridView, созданный некоторыми людьми, был тем дизайном, который мне нужен. Поэтому я попытался настроить его под мой код, но он не смог понять исходный код. (Я начинающий, чтобы начать программирование Android ...)

3] Создание собственного адаптера (расширяет SimpleAdapter)

  • Данные, которые мне нужно подключить к ListView, представляют собой переменную String (имя каждого вида сетки) и ArrayList (Site), которые содержат данные каждого элемента в GridView. Поэтому я создал Hashtable, который сообщает Arraylist (Site), содержащий элементы GridView, соответствующие переменной String в качестве ключа. Поэтому я посмотрел несколько адаптеров и обнаружил, что SimpleAdapter использует HashMap в качестве данных, и попытался их настроить, но это не удалось.

Если у вас есть необходимая информация о моем коде, я немедленно опубликую его.

Я хочу знать, как сделать это как можно проще ...

...