簡體   English   中英

RxJava2使用Flowable檢測零事件條件

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM