Метод item
Метод item приёмника
LazyGridScope
регистрирует одну ячейку
в
LazyVerticalGrid
или
LazyHorizontalGrid.
Содержимое задают в лямбде content.
Параметры span, key и contentType
управляют шириной ячейки в колонках и идентификацией.
Синтаксис
item {
Text("abcde")
}
Параметры
| Параметр | Описание |
|---|---|
content |
Лямбда с composable одной ячейки. |
span |
Сколько колонок или строк занимает ячейка.
Тип LazyGridItemSpanScope.
|
key |
Стабильный ключ ячейки. |
Пример
Давайте добавим две ячейки через item:
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.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
LazyVerticalGrid(columns = GridCells.Fixed(2)) {
item { Text(text = "abcde") }
item { Text(text = "12345") }
}
}
}
}
На экране две ячейки встанут в сетку слева направо, сверху вниз.
Пример
Давайте растянем ячейку на всю ширину сетки:
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.GridItemSpan
import androidx.compose.foundation.lazy.grid.LazyVerticalGrid
import androidx.compose.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
LazyVerticalGrid(columns = GridCells.Fixed(2)) {
item(span = { GridItemSpan(2) }) {
Text(text = "abcde")
}
item { Text(text = "12345") }
}
}
}
}
На экране первая строка займёт обе колонки,
"12345" появится на следующей строке.
Смотрите также
-
метод
items,
который добавляет много ячеек из коллекции -
метод
item,
аналог для ленивого списка -
класс
LazyGridScope,
где объявлен item -
функция
LazyVerticalGrid,
в лямбде которой вызывают item