【发布时间】:2020-12-30 05:43:01
【问题描述】:
Observable.range(11,10).subscribeOn(Schedulers.io())
.observeOn(Schedulers.io())
.subscribe(new Observer<Integer>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
}
@Override
public void onNext(@NonNull Integer integer) {
textView.setText(String.valueOf(integer));
Log.d(TAG, "onNext: "+Thread.currentThread().getName());
}
@Override
public void onError(@NonNull Throwable e) {
}
@Override
public void onComplete() {
}
});
onNext() 应该在单独的线程上运行,但它如何更新主线程上的 textview?
【问题讨论】:
-
@HansWurst,你能解释一下为什么
onNext()在主线程上被调用,尽管observeOn(Schedulers.io())? -
@ChandrimGayen,能否请您在 github 上发布最小示例项目并在此处发布?我不知何故认为还有更多事情发生,这是无法猜测的。
-
@ChristianB,好的,我会创建一个 git,但这需要时间。
标签: android rx-java2 rx-android