Android RecyclerView с пользовательским элементом, и каждый элемент отображает индикатор выполнения для асинхронной загрузки данных - PullRequest
0 голосов
/ 08 апреля 2020

Мне нужно реализовать RecylerView с 6 элементами, и эти 6 элементов должны вызывать отдельные API для загрузки данных, и мне нужно показывать индикатор выполнения для каждого элемента при асинхронном выполнении вызовов API, и тот, кто первым получит данные, покажет данные на плитке. и отклонит свой прогрессбар. Другие продолжат работу с индикатором выполнения до тех пор, пока не получат данные. Может кто-нибудь предложить лучший подход для этого.

1 Ответ

0 голосов
/ 08 апреля 2020

Стандартный подход будет,

  1. Добавить элемент ProgressBar в представление элемента RecyclerView.
  2. Добавить флаг inProgress (логическое значение) в ваши данные, которые вы используете для заполнения RecyclerView Adapter.
  3. Используйте этот флаг, чтобы показать / скрыть прогресс в вашем элементе.
  4. Когда данные загружены, обновите список элементов в вашем адаптере и измените inProgress на false для этого элемента (добавьте больше деталей, если вы sh).
  5. Позвоните adapter.notifyItemChanged(position), чтобы отобразить только этот элемент.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...