После прочтения множества статей о MVVM и RxJava мне нужно реализовать простейшую демку, чтобы хорошо уловить идею без использования DataBinding
Но я застрял в том, как ViewModel будет уведомлять View (Activity) со списком данных
Моя ViewModel содержит fetchGitHub(), которая таким образом использует RxJava
io.reactivex.Observable<List<Repo>> reposReturnedObservable = githubClient.reposForUser(user);
reposReturnedObservable
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<List<Repo>>() {
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
@Override
public void onSubscribe(Disposable d) {
compositeDisposable.add(d);
}
@Override
public void onNext(List<Repo> repos) {
data = repos;
}
});
Каких строк здесь не хватает, чтобы обновить представление данными
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewModel = new ViewModel();
viewModel.fetchGitHub("square");
}