Как вложить RadioGroup с динамическими списками RadioButton внутри каждой строки/элемента RecyclerView

Мне нужен такой макет:

введите здесь описание изображения

Красные заголовки — это массив первого уровня из dish_options, а RadioButtons заполняются из массива itemsвнутри dish_options json:

введите здесь описание изображения

Как вы могли заметить, dish_options — это массив, в котором может быть гораздо больше объектов, внутри одного из ключей этого dish_options может храниться items массивов.

Я попытался использовать getItemViewType() и установить разные макеты для первого уровня dish_options (красный заголовок) и реализовал разные макеты для RadioButton в каждой строке items проблема в том, что мне нужно использовать RadioGroup, чтобы сделать RadioButton уникальным (всего 1 щелчок на радиогруппу). Так что я застрял с этим и не знаю, как продолжить.

Должен ли я вкладывать RecyclerView в каждую строку RecyclerView?


person CommonSenseCode    schedule 05.11.2015    source источник


Ответы (1)


вы можете попробовать этот код https://github.com/h6ah4i/android-advancedrecyclerview

Это один адаптер, имеющий groupSection или GroupItem, поддерживаемый одним recyclerView, потому что ваш дизайн не слишком сложен, это может быть полезно.

сначала запустите "draggable with section" как есть... а затем измените макет в соответствии с вашими потребностями

вам может понадобиться удалить перетаскиваемый интерфейс с его методами, так как я думаю, они вам не нужны

implements DraggableItemAdapter<DraggableWithSectionExampleAdapter.MyViewHolder>

Внимательно посмотрите на этот класс, и вам может понадобиться интегрировать ваши данные JSON каким-то образом таким образом или внутри этих классов (я предлагаю, если вы не эксперт) строку комментария № 37–53 и попытаться воспроизвести с вашими данными

https://github.com/h6ah4i/android-advancedrecyclerview/blob/master/example/src/main/java/com/h6ah4i/android/example/advrecyclerview/common/data/ExampleSectionDataProvider.java

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

person Bhuro    schedule 27.10.2016