我可以使用RxJava保持两个集合同步吗?
如果我有一组模特。我可以将一系列ViewModels与我的模型集合同步。 ViewModel可以从模型构建。
答案 0 :(得分:0)
单向非常容易。用户模型更新时,更新从其订阅更新的相应视图模型。您也可以将概念扩展到另一个方向。还可以添加逻辑以仅同步某些字段(通过执行相等性检查或通过每个模型具有多个同步器)
public class User
{
private PublisSubject userSyncer=new PublishSubject();
public void setUser(User user)
{
...//if multiple setters, do the following line in each.
userSyncer.onNext(user);
}
public Observable getUserSyncer
{
return userSyncer.asObservable();
}
}
public class UserViewModel
{
User(User user)
{
user.getUserSyncer().subscribe(User user->//update user data)
}
}