簡體   English   中英

RxJava2主題,無數據

[英]RxJava2 Subject with no data

我必須聽一些事件,它可能發生在許多地方,例如按鈕單擊,textChanges,activityCallbacks等。

我正在使用Subject觸發此事件。 但是我不希望在此事件中發送任何數據。

我只需要通知發生了一些事件。 為此,有沒有類型的Subject嗎?

現在我正在創建一個String Subject

     Subject<String> mSubject = PublishSubject.create();

我用一些空字符串觸發它

  button.setOnClickListener(v -> {
                    mSubject.onNext("");
                });                  

但是該String值沒有任何意義。 我只需要觸發一個沒有任何數據的事件,就像Completable完成沒有任何結果值一樣。

有什么辦法嗎?

我需要像mSubject.trigger()這樣的mSubject.trigger()

正如漢斯所說,您可以定義一個表示可忽略值的枚舉:

enum ValueLessSignal {
    IGNORE_ME;
}

PublishSubject<ValueLessSignal> subject = PublishSubject.create();

subject.subscribe(ignore -> { System.out.println("Something happened"); })

subject.onNext(ValueLessSignal.IGNORE_ME);

您可以根據需要選擇枚舉的名稱及其單個實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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