我有一个Observable(从网络获取数据).
问题是可观察的速度可能快或慢,具体取决于网络条件.
我显示进度小部件,当observable正在执行时,并在observable完成时隐藏它.当网络快速 – 进展flikers(出现和消失).我想将可观察的最小执行时间设置为1秒.我怎样才能做到这一点?
“延迟”运算符不是一个选项,因为即使对于慢速网络它也会延迟.
解决方法:
您可以使用Observable.zip().特定
Observable<Response> network = ...
一个人可以做到
Observable<Integer> readyNotification = Observable.just(42).delay(1, TimeUnit.SECONDS);
Observable delayedNetwork = network.zipWith(readyNotification,
(response, notUsed) -> response);