Как создается внутреннее состояние прокрутки обновлений?Android

Форум для тех, кто программирует под Android
Anonymous
Как создается внутреннее состояние прокрутки обновлений?

Сообщение Anonymous »


Как следует из документов Compose, чтобы сделать компонуемый элемент без состояния, мы используем подъем состояния, заменяя переменную состояния двумя параметрами: значением и onValueChananged.

Примерно так:

MyText(text: String, onTextChanged: (String) -> Unit Однако в некоторых случаях составная функция получает значение без поднятия состояния, например, когда мы заинтересованы в чтении ScrollableState или LazyListState, мы передаем запомненное состояние к составной функции:

val lazyListState = RememberLazyListState() LazyRow(state = lazyListState) {...} С помощью приведенного выше кода предположим, что lazyListState косвенно используется в составном MyItem:

items(items = myItems, ключ = { элемент -> item.id }) { элемент -> val someDerivedState, помните { производноеStateOf { someComputationsWithLazyListState(lazyListState) } } MyItem(item = item, deferredDerivedState = {someDerivedState}) } Вот мой вопрос: как Compose поддерживает внутреннее обновление lazyListState, не передавая его через что-то вроде oScrollstateChange?

Обратите внимание: я не спрашиваю, как использовать LazyListState. Вопрос в том, как это работает.

Вернуться в «Android»