国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

詳解用RxJava實現事件總線(Event Bus)

2019-12-12 01:38:19
字體:
來源:轉載
供稿:網友

目前大多數開發者使用EventBus或者Otto作為事件總線通信庫,對于RxJava使用者來說,RxJava也可以輕松實現事件總線,因為它們都依據于觀察者模式。

不多說,上代碼

/*** RxBus* Created by YoKeyword on 2015/6/17.*/public class RxBus {  private static volatile RxBus defaultInstance;  private final Subject<Object, Object> bus;  // PublishSubject只會把在訂閱發生的時間點之后來自原始Observable的數據發射給觀察者  public RxBus() {   bus = new SerializedSubject<>(PublishSubject.create());  }  // 單例RxBus  public static RxBus getDefault() {    if (defaultInstance == null) {      synchronized (RxBus.class) {        if (defaultInstance == null) {          defaultInstance = new RxBus();        }      }    }    return defaultInstance ;  }  // 發送一個新的事件  public void post (Object o) {    bus.onNext(o);  }  // 根據傳遞的 eventType 類型返回特定類型(eventType)的 被觀察者  public <T> Observable<T> toObservable (Class<T> eventType) {    return bus.ofType(eventType);//    這里感謝小

主站蜘蛛池模板:
太仆寺旗|
阿瓦提县|
安丘市|
安溪县|
大名县|
榕江县|
尚义县|
临武县|
新昌县|
上高县|
香河县|
浏阳市|
柏乡县|
曲沃县|
江西省|
蓝山县|
潜江市|
浦东新区|
仁怀市|
巩义市|
邵武市|
抚宁县|
平遥县|
来宾市|
柘荣县|
乳山市|
西丰县|
昌都县|
枞阳县|
淮南市|
玛沁县|
丰镇市|
衡山县|
盐源县|
保康县|
文化|
荣昌县|
镶黄旗|
正安县|
鄂伦春自治旗|
南溪县|