RxJava:walfud 彻底搞懂 RxJava 系列 笔记
来源:互联网 发布:企业淘宝开店流程步骤 编辑:程序博客网 时间:2024/06/11 17:54
walfud 彻底搞懂 RxJava 系列:
彻底搞懂 RxJava — 初级篇
彻底搞懂 RxJava — 中级篇
彻底搞懂 RxJava — 高级篇
初级篇:
Observable .create(new Observable.OnSubscribe<String>() {//下面理解的第1步 @Override public void call(Subscriber<? super String> subscriber) { subscriber.onNext("hello"); } }) .subscribe(new Subscriber<String>() {//下面理解的第2步 @Override public void onCompleted() { } @Override public void onError(Throwable e) { } @Override public void onNext(String s) { textView.setText(s); } });
主要是Observable调用create以及构造完成后调用subscribe方法两步的分析:
- Observable.create实际上创建了一个Observable对象和一个OnSubscribe对象,OnSubscribe可以理解成事件流。
- create后调用的subscribe实际上是调用第一步的创建的OnSubscribe的call方法,可以理解成将该Observable的事件流指向我们new出的Subscriber
中级篇:
主要以map操作符为例,讲解了‘变换’操作:
- 第一步同样是create函数,与初级篇相同,创建了Observable和OnSubscribe两个对象
- 调用map函数,也就是调用lift,主要的变换操作就是lift函数中完成的:
①创建了一个OperatorMap,并将map中的处理过程也就是new的Fun1这个接口赋给了OperatorMap中的transformer对象。
②创建了第二个Observable和一个Subscriber。
③将第一个Observable(也就是我们调用Observable.create所创建的)的OnSubscribe指向上一步的Subscriber,也就是说将我们代码所产生的事件首先传递给了lift函数中创建的Subscriber处理。
④ 弟③步中lift函数创建的Subscriber的处理过程是
o.onNext(transformer.call(t)); 这个o便是我们需要自己创建的Subscriber - 最后我们调用subscribe函数并传入我们自己创建的Subscriber即可
高级篇:
还没仔细看,主要是关于线程的问题,貌似也是通过创建新的Observable和Subscriber作为代理进行线程间的切换
阅读全文
0 0
- RxJava:walfud 彻底搞懂 RxJava 系列 笔记
- 最后补充一个RxJava博客:walfud 彻底搞懂 RxJava 系列
- 彻底搞懂 RxJava
- 彻底搞懂 RxJava — 基础篇
- 彻底搞懂 RxJava — 中级篇
- 彻底搞懂 RxJava — 高级篇
- RxJava系列之一 初识Rxjava
- RxJava笔记
- Rxjava笔记
- RxJava笔记
- RxJava笔记
- rxJava笔记
- RxJava笔记
- RxJava笔记
- RxJava笔记
- RxJava笔记
- [RxJava笔记]RxJava操作符
- rxjava
- EditTextt如何设置获取焦点后,光标在末尾的解决办法
- CaptureMouse/CaptureStylus 可能会失败
- "=="和equals方法究竟有什么区别?
- day01
- java数组
- RxJava:walfud 彻底搞懂 RxJava 系列 笔记
- 数据库的备份
- XSSFSheet对象使用getLastRowNum()方法/合并单元格
- 阿尔法元秒杀阿法狗,人工智能时代开启了吗
- 计算机网络原理
- scrollview嵌套listview导致的高度计算不正确
- ar
- 多线程基础
- day02