1

У меня есть список с тикбоксами, в котором используется адаптер и который хорошо работает.Android - ListView с одним только расширяемым элементом

И я знаю, как сделать весь список расширяемым.

Но возможно ли иметь только один элемент, расширяемый, или это должен быть весь список? Если да, то как это делается?

ответ

0

Вам нужно будет использовать списки по одному элементу. К сожалению, нет виджета SDK, который обрабатывает специальный случай, в котором вы нуждаетесь.

0

Вы можете вставить (или удалить) «дочерние» элементы в нужном месте в наборе данных адаптера, когда щелкнуть «родительский», используя обычный ListView.

+0

Я не думаю, что вы можете использовать дочерний вид с ArrayAdapter, или я ошибаюсь? –

+0

Возможно ли иметь 2 ListViews, при этом один ListView «застрял» на дне другого, чтобы они прокручивались вместе и выглядели так, как будто они одни? –

+0

@andy_spoo Чтобы создать «дочерний» вид, вы можете вставить/удалить элемент адаптера в позиции N + 1 при щелчке родителя, где позиция N является вашим родителем. ArrayAdapter принимает один тип элемента и может не соответствовать этому в зависимости от ваших данных. К второму вопросу: вы, вероятно, могли бы взломать что-то вместе, но самым чистым способом добиться эффекта было бы создание составного адаптера, который объединяет элементы из двух или более адаптеров, используя один ListView. Убедитесь, что типы элементов уникальны для агрегированных адаптеров. – adamp

0

Фактически вы можете использовать ExpandableListView и думать о нерасширяемых элементах как о группе, не имеющей дочернего элемента.

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

Смежные вопросы