美文网首页
RxBus 及其使用

RxBus 及其使用

作者: 勤劳的蚂蚁 | 来源:发表于2020-03-11 14:26 被阅读0次

使用前 需集成rxjava

使用:
 /*发送数据*/
                RxBus.getInstance().post(new Bean());
//接受数据
RxBus.getInstance().toObserverable(ActivityStatus.class)
                .subscribe(new Action1<Bean>() {
                               @Override
                               public void call(Bean bean) {
                             
                              }
                           },
                        new Action1<Throwable>() {
                            @Override
                            public void call(Throwable throwable) {
                            }
                        });

public class RxBus {


    private final Subject<Object, Object> _bus;
    private static class RxBusHolder{
        private static final RxBus instance = new RxBus();
    }

    private RxBus() {
        _bus = new SerializedSubject<>(PublishSubject.create());
    }

    public static synchronized RxBus getInstance() {
        return RxBusHolder.instance;
    }

    public void post(Object o) {
        _bus.onNext(o);
    }

    public <T> Observable<T> toObserverable(Class<T> eventType) {
        return _bus.ofType(eventType);
    }

}



相关文章

网友评论

      本文标题:RxBus 及其使用

      本文链接:https://www.haomeiwen.com/subject/cbbmjqtx.html