Как обрабатывать измененные результаты API с помощью Paging 3 и LazyColumn (LazyPagingItems) в Compose ⇐ Android
Как обрабатывать измененные результаты API с помощью Paging 3 и LazyColumn (LazyPagingItems) в Compose
У меня есть конечная точка API, которая возвращает список объектов. Я использую Paging 3 с pagingSource, потоком в ViewModel и CollectAsLazyPagingItems. Этот список передается LazyColumn для отображения элементов на экране.
В LazyColumn элементы выглядят так
элементы( количество = список.itemCount, ключ = list.itemKey {it.uuid}, contentType = list.itemContentType {это} ) { // здесь можно составить } Например, я извлекаю 50 элементов на первой странице (и последний элемент в списке имеет uuid: «xxx»). Прокрутите вниз, и новые 50 элементов содержат этот элемент xxx, потому что порядок был изменен на сервере, пока я прокручивал. И теперь я получаю следующую ошибку:
IllegalArgumentException: ключ уже использован Я не хочу удалять уникальные ключи из LazyColumn, поскольку это повышает производительность. Есть ли другие способы справиться с этим случаем? Что я могу сделать, чтобы предотвратить эту ошибку при использовании Paging 3?
У меня есть конечная точка API, которая возвращает список объектов. Я использую Paging 3 с pagingSource, потоком в ViewModel и CollectAsLazyPagingItems. Этот список передается LazyColumn для отображения элементов на экране.
В LazyColumn элементы выглядят так
элементы( количество = список.itemCount, ключ = list.itemKey {it.uuid}, contentType = list.itemContentType {это} ) { // здесь можно составить } Например, я извлекаю 50 элементов на первой странице (и последний элемент в списке имеет uuid: «xxx»). Прокрутите вниз, и новые 50 элементов содержат этот элемент xxx, потому что порядок был изменен на сервере, пока я прокручивал. И теперь я получаю следующую ошибку:
IllegalArgumentException: ключ уже использован Я не хочу удалять уникальные ключи из LazyColumn, поскольку это повышает производительность. Есть ли другие способы справиться с этим случаем? Что я могу сделать, чтобы предотвратить эту ошибку при использовании Paging 3?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Обновление LazyPagingItems без видимого обновления LazyColumn в Jetpack Compose
Anonymous » » в форуме Android - 0 Ответы
- 29 Просмотры
-
Последнее сообщение Anonymous
-