本文主要給大家介紹了關于RxJava的一些特殊用法,分享出來供大家參考學習,需要的朋友們下面來一起看看吧。
一、按鈕綁定
通過 RxView 可以對 view 進行快速的 clicks 綁定
RxView.clicks(button).debounce(300, TimeUnit.MILLISECONDS).subscribe(new Action1<Void>() { @Override public void call(Void aVoid) { Log.i("test", "clicked"); } });二、輪詢
項目中需要輪詢請求,有兩種實現方式
第一種
//輪訓請求Observable.create(new Observable.OnSubscribe<String>(){ @Override public void call(Subscriber<? super String> subscriber) { Schedulers.newThread().createWorker().schedulePeriodically(new Action0() { @Override public void call() { //請求網絡 } },10,10, TimeUnit.SECONDS); }}).subscribe(new Action1<String>() { @Override public void call(String s) { }});第二種
//輪詢Subscription mRepeat = Observable.interval(2,2,TimeUnit.SECONDS) .subscribe(new Action1<Long>() { @Override public void call(Long aLong) { }});三、延遲操作
有了這個就不用寫,之前 thread 的延時方法了,而且可以快速的選擇主線程和子線程
//延遲Observable.timer(2,TimeUnit.SECONDS) .subscribe(call ->{});總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。
新聞熱點
疑難解答