RxJava入門實踐②
最近大家都在學習RXJAVA,作為有理想(mei shi gan)的程序員,RxJava還是沈有必要學習下的。
RXJAVA地址:https://github.com/ReactiveX/RxJava
2.最簡單的DEMO
3.SCHEDULER線程控制
4.操作符
5.初見RETROFIT
2.最簡單的DEMO
在RXJava中的使用需要滿足一下幾個步驟。
- 創建:Rx可以方便的創建事件流和數據流
- 組合:Rx使用查詢式的操作符組合和變換數據流
- 監聽:Rx可以訂閱任何可觀察的數據流并執行操作
是不是感覺這就是觀察者模式啊,沒辦法,就像前面提到的(0.什么是觀察者模式)因為RxJava就是基于觀察者模式的啊。
下面我們使用Rxjava打印一段字符串。
創建
被觀察者:
首先是被觀察的對象,在RxJava中使用“Observable”來表示
Observable observable = Observable.create(new Observable.OnSubscribe<String>() { @Override public void call(Subscriber<? super String> subscriber) { subscriber.onNext("this is a simple Demo"); subscriber.onCompleted(); } });
使用Observable的create()方法可以很輕松的創建一個Observable對象。
觀察者:
觀察者就是需要來進行觀察的人,在RxJava中使用“Subscriber”或者”Observer“來表示。
Subscriber<String> subscriber = new Subscriber<String>() { @Override public void onCompleted() { Toast.makeText(MainActivity.this, "success", Toast.LENGTH_SHORT).show(); } @Override public void onError(Throwable e) { Toast.makeText(MainActivity.this, e.getMessage(), Toast.LENGTH_SHORT).show(); } @Override public void onNext(String s) { Toast.makeText(MainActivity.this, s, Toast.LENGTH_SHORT).show(); } };
其中的
onCompleted()方法是方法完成時的回調
onNext()成功的回調
在該方法中接受傳遞到subscriber 中的參數并做相應的處理,當然傳遞來的參數 可以在傳遞到subscriber之前做相應的處理如過濾、變換等。
本例子就直接將傳遞來的字符串打印出來。
onError()失敗的回調
組合:
Rxjava中的變換牽扯到各種復雜的操作符和各種各樣的變換操作,在本例子當中不進行操作,在以后的例子中會進行具體的說明。
監聽:
在RXJava中訂閱采取的是被訂閱對象訂閱訂閱者的方式進行訂閱的(流式api原則)。
observable.subscribe(subscriber);
或者
observable.subscribe(observer);
完成好以上操作,運行程序,你就會發現程序界面上先顯示this is a simple Demo,后顯示success了
那么恭喜,你已經成功入門Rxjava了。
本文由用戶 HonClaypool 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!