2016-10-11 4 views
0

x秒ごとに放出する観測可能物を作成したいと思います。このxはある条件によって変わる可能性があります。Androidどのように時間間隔を変化させてObservableを作成する

今私は私に4秒間イベントを送信するものがあります。

Observable.interval(4, TimeUnit.SECONDS) 
    .takeUntil(new Func1<Long, Boolean>() { 
     @Override public Boolean call(Long aLong) { 
     return !showNextText; 
     } 
    }) 
    .observeOn(AndroidSchedulers.mainThread()) 
    .subscribeOn(Schedulers.newThread()) 
    .subscribe(new Action1<Object>() { 
     @Override public void call(Object o) { 


     } 
    }, new Action1<Throwable>() { 
     @Override public void call(Throwable throwable) { 

     } 
    }, new Action0() { 
     @Override public void call() { 
     } 
    }); 

答えて

0

concatMapおよびtimerを使用してください。私は強くOPは、定数の一連の時間の可変量を望んでいた、といないと思われる

Observable.just(1, 2, 3) 
    .concatMap(n -> Observable.timer(n, TimeUnit.SECONDS)) 
    .doOnNext(System.out::println) 
    .toBlocking().subscribe(); 
+0

この例では3秒後に放出した後、2秒後に放出した後、1秒後に放出されます。 –

関連する問題