Rxandroid观察者模式(三)
来源:互联网 发布:057188158198是淘宝吗 编辑:程序博客网 时间:2024/06/05 02:44
Rxandroid观察者模式
的基本使用流程:
//1.创建被观察者
//参数是一个对象,泛型代表了要发送(观察)的数据类型 注意:这里不要用成java包下的,而是要用rx包下的类
Observable<String> stringObservable = Observable.create(newObservable.OnSubscribe<String>() {
@Override//这里的subscriber ,就是你在下面注册的subscriber对象public voidcall(Subscriber<? superString> subscriber) {
//开始发送的事件,执行的逻辑相当于上一个例子Account中的setMoney方法subscriber.onNext("易宸锋");//当被观察者,观察结束时,回调的方法// subscriber.onCompleted();subscriber.onNext("yichenfeng");subscriber.onNext("易天嚎");//当被观察者有异常时,调用的方法subscriber.onError(newThrowable());subscriber.onNext("ycf");
}
});
//2.创建观察者
Subscriber<String> subscriber =new Subscriber<String>() {
//该方法在所有事件开始时回调,可用可不用@Overridepublic voidonStart() {super.onStart();}//该方法在被观察者发送变化时回调@Overridepublic voidonNext(String s) {System.out.println("onNext : " + s + "脸皮乃天下第一防御型神器");}//该方法有异常回调//注意:一旦这个方法执行了,就代表观察出现问题,其他两个回调方法,及时在下面还有调用,也不会执行了@Overridepublic voidonError(Throwable e) {System.out.println("onError : " + e);}//当所有事件观察完毕的,回调,事件序列结束标记//注意:一旦这个方法执行了,就代表观察结束,其他两个回调方法,及时在下面还有调用,也不会执行了@Overridepublic voidonCompleted() {System.out.println("onCompleted : ");}
};
//3.把观察者注册到被观察身上
stringObservable.subscribe(subscriber);//只要一有这段代码,Observable.create下的call方法就会执行
//4.在生命周期中解除观察,释放资源
if(mSubscriber !=null && !mSubscriber.isUnsubscribed())mSubscriber.unsubscribe();
阅读全文
0 0
- Rxandroid观察者模式(三)
- 理解RxJava,RxAndroid的观察者模式
- 设计模式之观察者模式(三)
- (行为型模式三)观察者模式
- 设计模式(三)观察者模式
- 设计模式(三)观察者模式
- 浅析设计模式(三)观察者模式
- 第十四章(三) 观察者设计模式
- 观察者模式浅谈篇(三)
- Java设计模式详谈(三):观察者
- 观察者模式(三)
- 三、观察者模式
- IOS设计模式之三(适配器模式,观察者模式)
- iOS设计模式之三(适配器模式,观察者模式)
- iOS设计模式之三(适配器模式,观察者模式)
- IOS设计模式之三(适配器模式,观察者模式)
- IOS设计模式之三(适配器模式,观察者模式)
- IOS设计模式之三(适配器模式,观察者模式)
- 还是httpurlconnection
- 自定义View 圆形进度条
- Retrofit网络请求和MVP的简单的讲解
- 易学MVP 个络加载数据+XRecyclerView+Retrofit
- 【JavaSE_学习笔记】排序、二分查找与数组工具类
- Rxandroid观察者模式(三)
- 综合
- hihocoder 1014 Trie树
- 最大似然估计 (MLE)与 最大后验概率(MAP)在机器学习中的应用
- 十周 项目1(4)
- Hibernate入门(二)
- JS获取元素样式
- RxAndroid操作符(四)
- 设计模式