【发布时间】:2016-06-14 21:56:45
【问题描述】:
我使用带有 rxjava 扩展的改造 2
我有 3 个 Observable,它们会做 3 种不同的事情
Observable<String> observable1 = RetrofitInterface.GetByID(id);
Observable<String> observable2 = RetrofitInterface.GetByKey(key);
Observable<String> observable3 = RetrofitInterface.GetByValue(value);
现在以某种方式用户可以选择一起运行所有这些
要运行它们,我这样做:
observable1.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.unsubscribeOn(Schedulers.io())
.subscribe(new Subscriber<String>() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
}
@Override
public void onNext(String str1) {
// do some stuff here
}
});
用户在这里有3个选项,
- 单独运行每个可观察对象
- 三个一起运行,等待它们完成显示结果
- 依次运行它们,并一一得到结果。
我们如何在 Rxjava 中执行最后两个选项,让 Retrofit 将这三个 observables 发送给我们?
【问题讨论】:
标签: android rx-java retrofit2 rx-android