2 фрагмента(А и В).
На фрагменте А - текстовое поле + кнопка. При нажатии переходим на фрагмент В.
На фрагменте В - грузим список(с зашитого json + с сервера). Сам список возможно пишем в БД.
При клике на пункт - запоминаем модельку нажатого пункта(возможно пишем в БД, т.к. она будет нам нужна не раз) и уходим на фрагмент А на котором в текстовое поле вставляем данные из модели нажатого пункта.
+есть момент, что список на фрагменте В после выбора немного преображается и если мы вернемся в него ещё раз, он уже будет выглядеть по иному.
Использую Moxy+Dagger2+rxJava2
Вопросы:
1) как правильно организовать передачу данных/модельки из В в А? (здесь мои предполагаемые варианты это EventBus или Otto)
2) как на фрагменте В иметь измененные данные если мы вернулись на данный фрагмент вновь.
Можно вносить коррективы - описал как это вижу я.
Спасибо!
1) Для общения между двумя презентерами глобальные EventBus-ы - не самое лучшее решение. Для этого применяются либо локальные EventBus-ы (как в примере у Евгения https://github.com/matzuk/EventBusExample/blob/master/app/src/main/java/com/matsyuk/eventbusexample/ui/bus/RxBus.java), либо синхронизация через репозиторий. Поскольку вы написали что на экране B данные сохраняются в БД, то на экране А их с этой БД можно вычитывать. 2) От чего зависят изменения? Допустим если изменения приходят с сервера, то что мешает всегда загружать свежие данные при создании презентера?
Обсуждают сегодня