RxAndroid2.0实现RxBus
来源:互联网 发布:阿里云数据库克隆 编辑:程序博客网 时间:2024/05/20 10:11
转载连接:http://www.jianshu.com/p/135f3f9c350d
RxBus实现
1 添加Gradle:
//RxAndroidcompile 'io.reactivex.rxjava2:rxandroid:2.0.1'compile 'io.reactivex.rxjava2:rxjava:2.0.4'
2 添加RxBus类:
public class RxBus {private static volatile RxBus mInstance;private final Subject<Object> subject = PublishSubject.create().toSerialized();private Disposable dispoable;private RxBus() {}public static RxBus getInstance() { if (mInstance == null) { synchronized (RxBus.class) { if (mInstance == null) { mInstance = new RxBus(); } } } return mInstance;}/** * 发送事件 * @param object */public void send(Object object) { subject.onNext(object);}/** * @param classType * @param <T> * @return */public <T> Observable<T> toObservale(Class<T> classType) { return subject.ofType(classType);}/** * 订阅 * @param bean * @param consumer */public void subscribe(Class bean, Consumer consumer) { dispoable = toObservale(bean).subscribe(consumer);}/** * 取消订阅 */public void unSubcribe(){ if (dispoable != null && dispoable.isDisposed()){ dispoable.dispose(); }}}
3 添加监听
RxBus.getInstance().subscribe(String.class, new Consumer<String>() { @Override public void accept(String path) throws Exception { } });
4 发送监听事件:
RxBus.getInstance().send("发送事件");
5 在退出Activity(Fragment)时,取消监听:
RxBus.getInstance().unSubcribe();
阅读全文
0 0
- RxAndroid2.0实现RxBus
- Retrofit2.0+RxAndroid2.0实现网络下载
- RxAndroid2.0使用概述
- Rxandroid2.0 使用一
- RxAndroid2.0 倒计时简单封装
- RXAndroid2.0初学习一
- RXAndroid2.0初学习二
- RXAndroid2.0初学习三
- RXAndroid2.0初学习四
- RxBus简单实现
- RxBus----Rxjava实现EventBus
- RxBus基本实现
- 用RxJava实现RxBus
- Rxbus实现事件总线
- rxbus的实现
- Android RxJava 实现RxBus
- 实现RxBus代替EventBus
- 【笔记】RxJava2.0新特性简单介绍并实现RxBus
- Bash 老司机也可能忽视的 10 大编程细节
- backbone
- 如何转载CSDN文章
- 如何在angular2中引用FontAwesome字体中的图标?
- jquery练习2 div与按钮的样式变化
- RxAndroid2.0实现RxBus
- IDEA克隆代码后在右下角没有git分支
- [喵咪大数据]Hadoop单机模式
- 史上最全"IT架构师"技术知识图谱
- 如何解决Linux下Python3.5无法使用tkinter
- linux下安装mysql,jdk,Tomcat
- cglib动态代理使用
- 【个人笔记重点,不作为参考】主题:详解基于node的前端项目编译时内存溢出问题
- activity的生命周期解读