Как создать Предметы с разным размером в заказе с помощью StaggeredGridLayoutManager?

У меня в списке есть предметы, включенные в разные категории. Например, у меня есть 4 списка, и я объединяю их так:

list1 = A,A,A,A
list2 = B,B,B,B
list3 = C,C,C,C
list4 = D,D,D,D

я объединяю их вот так:

mergedList=A,B,C,D,A,B,C,D,A,B,C,D,A,B,C,D

Все элементы списка могут иметь разный размер, и я хочу расположить все элементы A в первом диапазоне, элементы B во втором диапазоне и то же самое для элементов CD...

Но предметы всегда расположены в разных пролетах. Поскольку размеры элементов различаются, и некоторые элементы создаются после элементов небольшого размера, а не в следующем диапазоне. Есть ли способ исправить эту проблему с StaggeredGridLayoutManager?

1 ответ

Решение

Я исправил проблему. StaggeredGridLayoutManager каждый раз добавляет следующий элемент к наименьшему размеру. Вы должны вычислить ширину диапазона и выбрать элемент из соответствующего списка.

Другие вопросы по тегам