
Gmail – Contacts – System
В Android 16 пошла мода делать списки полноценными интерактивными, экспрессивными и сегментированными элементами интерфейса. ListItem закрывает базовые сценарии: заголовок, дополнительный текст, иконки, действия справа, клики, отступы, цвета и состояния нажатия. SegmentedListItem добавляет к этому визуальное объединение соседних элементов: можно собрать список из отдельных карточек, которые выглядят как единый аккуратный блок с правильными скруглениями и промежутками.
ListItemListItem – это готовый composable-компонент для строки списка из Material 3. Он позволяет быстро и единообразно собирать элементы списков с текстом, иконками, чекбоксами, свитчами и другой информацией. Без ListItem каждый item приходится собирать вручную через Row, Column и Box, следить за отступами, минимальной высотой, типографикой и состояниями enabled, selected, dragged. ListItem все это знает и делает за тебя.
Когда использовать:
ListItem(
headlineContent = { Text(text = "Bluetooth") },
supportingContent = { Text(text = "Выключен") },
leadingContent = {
Icon(
imageVector = Icons.Default.Bluetooth,
contentDescription = null
)
},
trailingContent = {
Switch(
checked = false,
onCheckedChange = null
)
}
)
ListItem существует в 3 вариантах:
ListItem – стабильный API, не обрабатывает клики и взаимодействия, подходит для статических списков. Логику клика можно навесить через Modifier.ListItem из Material 3 Expressive с поддержкой кликов, выбора и анимации формы.SegmentedListItem – такой же интерактивный, но для визуально сгруппированных списков, где элементы выглядят как единый блок с общими скругленными углами.implementation("androidx.compose.material3:material3")
1.1.0-alpha06 от 8 февраля 2023.