Что делает параметр initialKey в конструкторе пейджера

Я пытаюсь понять, что за initialKey делает в Pager конструктор, но я не могу найти никаких объяснений, даже в официальной документации:

https://developer.android.com/reference/kotlin/androidx/paging/Pager#%3Cinit%3E(androidx.paging.PagingConfig,%20androidx.paging.Pager.Key,%20androidx.paging.RemoteMediator,%20kotlin.Function0)


Может ли кто-нибудь объяснить, что он делает или как работает и как его использовать?

1 ответ

Решение

После тестирования я считаю initialKey param предназначен для обозначения позиции в списке, а не страницы.

Я провел два теста с разными размерами страниц.

Таблица на 2000 записей

Размеры страницы

  • 10
  • 20
  • 100
  • 123

Для каждого размера страницы я использовал следующее в качестве initialKey для элемента в позиции X

  • initialKey = X
    • это использует позицию элемента как initialKey
  • initialKey = X / размер страницы
    • здесь используется страница, на которой элемент является частью

Для всех результатов элемент всегда будет правильно загружаться в начальный / первый блок данных, когда я использовал initialKey = X. Он всегда терпел неудачу, когда я использовал его как размер страницы.

Я не уверен, что это окончательно, но это был мой вывод из ограниченных тестов для моей проблемы.

Другие вопросы по тегам