Оригинальный экран
У меня был экран со счетчиком сверху, когда пользователь выбирает значение из счетчика, мы отображаем элементы для этого выбора в списке ниже.
Данные получают с сервера, используя асинхронную задачу, с разбивкой по страницам. По мере прокрутки пользователь получает больше данных с сервера, используя асинхронную задачу для добавления в список. (я получаю предметы с 1 по 20, когда пользователь прокручивает вниз, получаю предметы с 21 по 40).
Например: при выборе «Bucket 1» в списке отображаются все элементы в «Bucket 1», затем при выборе «Bucket 2» список изменяется для отображения всех элементов в «Bucket 2». Мы никогда не знаем, сколько предметов в каждом ведре, количество может варьироваться.
![enter image description here](https://i.stack.imgur.com/MjFwB.png)
Новый требуемый экран
Мне нужно изменить этот экран, чтобы я больше не использовал счетчик.
Вместо этого я хочу иметь один список, который содержит все элементы из все корзины (см. Изображение ниже). Я хочу отобразить все элементы из корзины 1, затем все элементы из корзины 2 и так далее.
Примечание: я могу или не могу хотеть разделительные строки, показывающие название корзины,
Проблема, с которой я столкнулся, заключается в том, что сервер позволяет мне получать предметы только по одному ведру за раз, поэтому мне придется звонить, чтобы получить предметы из ведра 1, а затем пользователь прокручивает, если у меня заканчиваются предметы из ведро 1 получить предметы из ведра 2 и т. д.
Мне нужно, чтобы все элементы были в одном списке, чтобы я мог выбрать несколько элементов в разных сегментах.
![enter image description here](https://i.stack.imgur.com/b04ez.png)
Помощь
Как мне закодировать такой список? Список содержит данные, поступающие от НЕСКОЛЬКИХ РАЗНЫХ асинхронных вызовов.
Полагаю, мне нужно начать с звонков, чтобы подсчитать, сколько всего элементов во всех корзинах, и это мой список.
Я видел, что есть "MergeCursor", но это не поможет мне, поскольку я не получаю данные из базы данных.
Я видел, что есть "MergeAdapter", который является одним адаптером, который содержит дочерние адаптеры. В моем случае у меня был бы 1 дочерний адаптер для каждого ведра. Мой счетчик MergeAdapter будет общим количеством всех дочерних элементов, и затем при получении представления / элементов для каждой строки мне придется использовать положение и размер каждого сегмента, чтобы узнать, из какого сегмента получить элемент.
Будем весьма благодарны за любые предложения, как это сделать.