Как я могу обновить элемент переработчика из диалогового фрагмента? - PullRequest
0 голосов
/ 04 июня 2019

В моем приложении я получаю некоторые данные с сервера в формате json. Затем я выбираю поля из json и заполняю свой список RecyclerView пользовательским адаптером. Этот список заполнен данными о вакансиях. Когда я нажимаю на задание моего реселлера, я перемещаюсь от фрагмента хостинга к фрагменту диалога для его просмотра. Этот dialogFragment содержит кнопку homesUp, после нажатия которой я возвращаюсь к хостингу. В этом диалоговом окне у меня есть кнопка, которая отправляет запрос на сервер об этой работе для добавления его в другую БД на сервере. Но когда я нажимаю эту кнопку и отправляю запрос на сервер, то после возвращения к хостингу я вижу, что выбранные данные не изменились. У меня есть несколько способов решения этой проблемы:

  1. Добавьте в мою переменную класса Singleton ArrayList, которая будет заполнена данными показанного задания, и затем я проверю, содержит ли мой Arraylist из Singleton этот идентификатор
  2. другой метод - notifyItemChanged ()

Все эти методы не работают, потому что мой список заполнен старыми данными, и я только отклоняю dialogFragment и возвращаюсь к фрагменту, который содержит список со старыми данными.

Единственный способ - отправить запрос на сервер для повторного заполнения списка.

Итак, мне нужна ваша помощь или полезный совет:)

1 Ответ

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

Вам необходимо передать измененные данные из фрагмента диалога на предыдущий экран. Для этого можно использовать LocalBroadcastManager или rxjava или даже живые данные.

Или создайте pagedlistadapter из библиотеки подкачки, выпущенной в архитектуре Android, дополняют и загружают данные непосредственно из запроса. Справка: https://developer.android.com/topic/libraries/architecture/paging

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...