RxJava在github上的官方介绍:
a library for composing asynchronous and event-based programs by using observable sequences.
一个在运行在Java VM上的库, 通过可观测的序列来组成异步的、基于事件的程序。(原谅我的英语水平有限)
rxjava github地址:https://github.com/ReactiveX/RxJava
rxandroid github地址:https://github.com/ReactiveX/RxAndroid
与其他技术相比,我们为什么要选用rxjava???
Observable(被观察者)和Subscriber(订阅者)可以做到任何事情:
1.Observable可以是一个网络请求,Subscriber来显示请求结果;
2.Observable可以是一个数据库查询,Subscriber来显示查询结果;
3.Observable可以是按钮点击事件,Subscriber来响应点击事件;
4.Observable可以是大图片文件的加载解析, Subscriber来展示解析后的图片。
本文作为此系列文章的第一篇,主要展示一下有关创建Observable对象的相关API,废话不多说,直接上大锤。
create:
Observable.createjust:
Observable.justfrom:
Observable.fromjust和from比较:just会将数组作为一整个对象只发射一次,而from是将数组里的每个对象分别发射一次,也就是说会发射多次。
defer:
Observable.deferdefer允许直到有观察者订阅时才创建Observable,并且为每个观察者创建一个新的Observable
interval:
Observable.intervalinterval创建一个按固定时间间隔发射整数序列的Observable
timer:
Observable.timertimer创建一个Observable,它在一个给定的延迟后发射一个特殊的值
range:
Observable.rangerange创建一个发射特定整数序列的Observable,发射一个范围内的有序整数序列,你可以指定范围的起始和长度
repeat:
Observable.repeatrepeat创建一个发射特定数据重复多次的Observable
总结:
以上的方法已经基本例举了RxJava中有关Observable对象创建的API,具体用法还需要大家多加练习呀!
注:本人会在此系列文章的末尾加上GitHub源码地址,敬请期待。。。
网友评论