[英]RxJava2 Detect zero event condition with Flowable
我正在使用一个Android库FrangSierra来监听Firebase
数据库事件。 这个库返回RxJava2
Flowables
一起工作。 当我开始加载数据时显示一个加载对话框,并且在接收数据时需要将其隐藏。 现在的问题是,当没有数据时,我需要显示一个空视图,因为Flowable
从不调用OnComplete
。
我尝试应用timeout
,问题是数据加载完成后,它可能总是超时。 我也想保留订阅以备将来使用。 我的问题是如何在这里检测0条记录。
您可以使用switchIfEmpty
运算符:
Flowable.just(1)
.filter(value -> (value != 1))
.switchIfEmpty(Completable.fromRunnable(() -> System.out.println("Empty stream")).toFlowable())
.subscribe();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.