Что такое ContiguousPagedList? - PullRequest
1 голос
/ 14 июня 2019

Я смотрел на Android Paging, и, кажется, есть конкретное вкрапление PagedList как ContiguousPagedList. Какая польза от этого класса? Посмотрел, нашел ли он использование / причину существования, но не нашел.Кто-нибудь может объяснить, почему это ContiguousPagedList существует?

1 Ответ

1 голос
/ 16 июня 2019

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

Как вы упомянули, PageKeyedDataSource и ItemKeyedDataSource являются реализациями ContiguousDataSource.

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

PageKeyedDataSource: Инкрементальный загрузчик данных для содержимого на основе страниц, где запросы будут возвращать ключи для следующих / предыдущих страниц.

В обоих случаях вам нужно использовать данные со страницы N - 1 для загрузки страницы N.

Non-ContiguousDataSource : Перейдите непосредственно к определенной части в наборе данных и загрузите материал вокруг этого. Eg: Приложение контактов, в котором вы переходите от «A» к «H».

Android Paging также поддерживает эту функцию с реализацией DataSource PositionalDataSource . Это помогает загружать исчисляемые данные фиксированного размера, поддерживая загрузки фиксированного размера в произвольных положениях страницы.

...