RxJava 基本实现

添加依赖

 implementation 'io.reactivex:rxjava:1.2.0'
 implementation 'io.reactivex:rxandroid:1.2.1'

其中 RxAndroid 是 RxJava 在 Android 平台的扩展。它包含了一些能够简化 Android 开发的 工具,比如特殊的调度器。

创建 Observer(观察者)

决定事件触发的时候将有怎样的行为。

 // 观察者
        Subscriber subscriber = new Subscriber<String>() {
            @Override
            public void onStart() {
                Log.d("TAG","onStart");
            }
            @Override
            public void onNext(String s) {
                Log.d("TAG","onNext");
            }
            @Override
            public void onError(Throwable e) {
                Log.d("TAG","onError");
            }
            @Override
            public void onCompleted() {
                Log.d("TAG","onCompleted");
            }
        };

onCompleted:事件队列完结。RxJava 不仅把每个事件单独处理,其还会把它们看作一 个队列。当不会再有新的 onNext 发出时,需要触发 onCompleted()方法作为完成标志。

onError:事件队列异常。在事件处理过程中出现异常时,onError()会被触发,同时队列 自动终止,不允许再有事件发出。

onNext:普通的事件。将要处理的事件添加到事件队列中。

onStart:它会在事件还未发送之前被调用,可以用于做一些准备工作。例如数据的清零 或重置。这是一个可选方法,默认情况下它的实现为空。

创建 Observable(被观察者)

它决定什么时候触发事件以及触发怎样的事件。

Observable<String> observable = Observable.create(new Observable.OnSubscribe<String>() {

            @Override
            public void call(Subscriber<? super String> subscriber) {
                subscriber.onNext("1");
                subscriber.onNext("2");
                subscriber.onCompleted();
            }
        });
// just
//Observable<String> observable1 = Observable.just("1", "2");
// from
//Observable<String> observable2 = Observable.from(new String[]{"1", "2"});
        

Subscribe(订阅)

observable.subscribe(subscriber);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值