Я хотел бы создать макет сетки, в котором каждый элемент занимает как можно больше места (за исключением заполнения), но только до тех пор, пока доступны столбцы (после этого следующий элемент будет вставлен в следующую строку, пока сохраняя размер). Кроме того, каждый элемент должен быть квадратом и добавляться динамически.
Пример макета из 10 элементов будет следующим:
Я пытался добиться этого, устанавливая веса, ограничения отношения, переопределяя onMeasure
- но я просто не могу заставить его работать. Я был бы счастлив с программным решением c или решением XML (при условии, что каждый элемент может быть добавлен программно). Я бы предпочел, чтобы решение было в Kotlin, но я был бы счастлив и на основе Java.
Вероятно, стоит сказать, что каждый элемент в макете сетки является макетом (RelativeLayout
на данный момент), чтобы облегчить накачивание и настроить наслоенный фон программным способом.