2016-10-08 13 views
0

ObservableのメソッドonComplete()でObservableがonCompleteを呼び出したのはどうすればよいですか?RxJava:onCompleteで観測可能にする

event.subscribe((e) -> { 
}, 
(error) -> { 
}, 
() -> { 
// HERE - How do I tell what event source is completing? 
} 
+0

私はその質問を理解していないので、いくつかのコードサンプルを投稿してください。 Observableを作成した同じチェーンでonCompleteが呼び出されます – breakline

+0

@breaklineに詳細が追加されました – mtyson

+0

私が正しく理解すれば、あなたは傾けることができます。しかし、私はあなたがそれを望む理由を理解していません。サブスクリプション自体を保存し、それをonCompletedで参照することができます。あなたがしたいことが何であれ、あなたはObservableが基本的にもう存在しないonCompletedの後にチェーン自体にそれを含めるべきです。 – breakline

答えて

0

'イベント' 観測可能である:

より詳細には、あなたは以下の持っていると言います。オブザーバブルから放出されるすべてのアイテムは、一連の演算子を通過します。アイテムが事業者を通過した後、加入者にリダイレクトされ、「購読」で発生しています。 Subscribeは2つのオーバーロードを提供します。ストリーム(イベント)の放出ごとに1つと、「イベント」 - 観測可能(ストリーム)が終了したことを通知するための2つ目のものです。

Observableで変換されるリストを見てみましょう。配列をObservableに変換すると、サブスクリプションの各値1,2,3 onNextに対して呼び出されます。 3がonNextにプッシュされた後、observableは "onComplete"になります。何が起きているのかを見るために、gitHubの実装を見てください。

質問:イベントソースが完了しているかどうかを確認するにはどうすればよいですか? あなたが購読しているので、Observable 'event'になります。

+0

しかし、 'event'オブジェクトのリファレンスは' onComplete() 'メソッドの中でどのように取得しますか?囲むラムダスコープで利用可能)? – mtyson

+0

参照をどうしたいですか?たぶん別の方法があります。 –

関連する問題