Rxjava1 与 Android 的故事(1)—— Create

205 阅读2分钟
原文链接: www.jianshu.com

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.create

just:


Observable.just

from:


Observable.from

just和from比较:just会将数组作为一整个对象只发射一次,而from是将数组里的每个对象分别发射一次,也就是说会发射多次。

defer:


Observable.defer

defer允许直到有观察者订阅时才创建Observable,并且为每个观察者创建一个新的Observable

interval:


Observable.interval

interval创建一个按固定时间间隔发射整数序列的Observable

timer:


Observable.timer

timer创建一个Observable,它在一个给定的延迟后发射一个特殊的值

range:


Observable.range

range创建一个发射特定整数序列的Observable,发射一个范围内的有序整数序列,你可以指定范围的起始和长度

repeat:


Observable.repeat

repeat创建一个发射特定数据重复多次的Observable

总结:

以上的方法已经基本例举了RxJava中有关Observable对象创建的API,具体用法还需要大家多加练习呀!

注:本人会在此系列文章的末尾加上GitHub源码地址,敬请期待。。。