Класс LazyGridScope
Класс LazyGridScope - приёмник лямбды
LazyVerticalGrid
и
LazyHorizontalGrid.
Методы добавляют одну ячейку или серию ячеек
по коллекции данных.
Compose собирает только видимые ячейки,
поэтому большие сетки прокручиваются плавно.
Синтаксис
LazyVerticalGrid(columns = GridCells.Fixed(2)) {
item { Text("abcde") }
items(listOf("12345")) { line ->
Text(line)
}
}
Методы
| Метод | Описание |
|---|---|
item |
Добавляет одну ячейку сетки. |
items |
Добавляет ячейки по элементам коллекции или по count. |
Пример
Давайте заполним сетку одной ячейкой и коллекцией:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.lazy.grid.GridCells
import androidx.compose.foundation.lazy.grid.LazyVerticalGrid
import androidx.compose.foundation.lazy.grid.items
import androidx.compose.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
val tail = listOf("12345")
LazyVerticalGrid(columns = GridCells.Fixed(2)) {
item { Text(text = "abcde") }
items(tail) { line ->
Text(text = line)
}
}
}
}
}
На экране "abcde" займёт первую ячейку,
"12345" - следующую в сетке.
Смотрите также
-
класс
LazyListScope,
приёмник лямбды списка с stickyHeader -
функция
LazyVerticalGrid,
где доступен LazyGridScope -
класс
GridCells,
который задаёт число колонок -
класс
LazyGridState,
который хранит положение сетки