Я работаю над приложением, используя шаблон MVVM
с RxJava
.Архитектура следующая:
Впервые я использую этот шаблон, и я не уверен в том, что лучше всего обновить ViewModel
(и, следовательно, соответствующийView
) когда происходит изменение данных, сделанных другим компонентом приложения.
Например: предположим, у нас есть Activity
, показывающий список пользователей, за которыми я следую (например, социальное приложение),из этого списка я выбираю пользователя и открываю его профиль в другом Activity
.Теперь, начиная с этой второй Activity
, я решаю отписаться от пользователя, и когда я нажимаю кнопку «Назад», чтобы вернуться к первому Activity
, я бы хотел, чтобы список обновлялся автоматически (удаляя соответствующего пользователя, очевидно, без необходимости повторноскачать все данные).
Проблема в том, что два Activity
имеют два разных ViewModel
.Как я могу сделать изменения, сделанные вторым Activity
, влияющим на ViewModel
первого?Является ли обязанностью Repository
сообщить первым Activity
об изменениях?
- Я бы предпочел не использовать
startActivityForResult
- Я бы не хотелвведите
ViewModel
первого Activity
во второй
Большое спасибо!