Как установить значение столбца и строки для элемента в gridLayout в Anko?
Я пробовал несколько версий, но это не компилируется:
return UI { gridLayout() { columnCount = 2 rowCount = 3 button("1x1") { }.lparams() { column = 1; row = 1 } } }.view
Когда я делаю это так (как функцию) или как свойства внутри фигурных скобок, он говорит, что не может ссылаться на column
или row
. Когда я предоставляю их в качестве аргументов lparams, он говорит, что none of the following functions can be called with arguments supplied
.
Как указано в документации GridLayout
:
Дети занимают одну или несколько смежных ячеек, как определено их параметрами макета
rowSpec
иcolumnSpec
. Каждая спецификация определяет набор строк или столбцов, которые должны быть заняты; и как дети должны быть выровнены в результирующей группе клеток.
Вы можете использовать rowSpec
и columnSpec
так:
return UI { gridLayout() { columnCount = 2 rowCount = 3 button("1x1") { }.lparams { rowSpec = GridLayout.spec(1) columnSpec = GridLayout.spec(1) } } }.view