【发布时间】:2019-08-14 10:42:03
【问题描述】:
我正在开发一个使用MVVM 模式和RxJava 的应用程序。架构如下:
这是我第一次使用这种模式,我不确定当数据发生变化时更新ViewModel(以及相应的View)的最佳方法是由另一个组件进行的应用。
例如:假设我们有一个 Activity 显示我关注的用户列表(就像一个社交应用程序),我从这个列表中选择一个用户并在另一个 Activity 中打开他的个人资料。现在,从第二个Activity 开始,我决定取消关注该用户,当我按下后退按钮返回第一个Activity 时,我希望自动更新列表(删除相应的用户,显然无需重新下载所有数据)。
问题是这两个Activity 有两个不同的ViewModel。如何使第二个Activity 所做的更改影响第一个ViewModel? Repository 是否有责任通知第一个 Activity 更改?
- 我宁愿不使用
startActivityForResult - 我宁愿不要将第一个
Activity的ViewModel注入到第二个中
非常感谢!
【问题讨论】:
标签: android mvvm kotlin rx-java