0
Observable t
が刻々と変化するたびにObservable x
の最新の、場合によっては繰り返される(!)値を常に出力するObservableを構築したいと思います。 t
の間に変更がなければ、x
の繰り返し値を出力しないので、x.sample(t)
を使用することはできません。RxJava:サンプリングする方法を変更しないで繰り返す
Observable t
が刻々と変化するたびにObservable x
の最新の、場合によっては繰り返される(!)値を常に出力するObservableを構築したいと思います。 t
の間に変更がなければ、x
の繰り返し値を出力しないので、x.sample(t)
を使用することはできません。RxJava:サンプリングする方法を変更しないで繰り返す
私の解決策です。 Pair
はleft
とright
値を持つ単純なJava Beanです
public <T, F> Observable<T> answer(Observable<T> values, Observable<F> trigger) {
return Observable.combineLatest(values, trigger, Pair::of)
.distinctUntilChanged(p -> p.getRight())
.map(Pair::getLeft);
}
。