В Jetpack Compose нет RecyclerView в традиционном понимании. Для отображения списков используется LazyColumn (для вертикальных списков) и LazyRow (для горизонтальных списков). Они предоставляют аналогичную эффективность за счет переиспользования элементов.
Пример использования LazyColumn:
kotlin
Разбор:
LazyColumn: Композируемая функция, которая отображает элементы в вертикальном списке, создавая их по мере необходимости.items(itemsList) { item -> ... }: Расширение для LazyListScope, которое позволяет итерироваться по списку данных (itemsList) и для каждого элемента (item) вызывать предоставленный Composable лямбда-блок. В этом блоке определяется, как будет выглядеть каждый элемент списка.Text(text = item): Простая дочерняя композируемая функция, отображающая текст текущего элемента списка.Ключевые особенности LazyColumn/LazyRow:
Можно использовать itemsIndexed для доступа к индексу каждого элемента:
kotlin
Для более сложного поведения (например, разные типы представлений), можно использовать перегрузку items или item:
kotlin