Android RxJava2异步刷新使用

在我的认知体系中(可能我年轻)android的环境不如js的好,RxJava更像是JS的异步请求和ajax风格(个人认为)

例子的地址:https://download.csdn.net/download/zhaohan___/10921539
没有积分可以发邮件给我(他自己会动改积分我也不知道为什么)
 han.zhao@smartonet.cn

1.在build.gradle中引入不同的包

	//rxJava
    implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'
    implementation "io.reactivex.rxjava2:rxjava:2.0.8"

2.简单的使用

	 //1.被观察者
                Observable<String> observable = Observable.create(new ObservableOnSubscribe<String>() {
                    @Override
                    public void subscribe(ObservableEmitter<String> emitter) throws Exception {
                        //发送数据
                       for(int a=0;a<20;a++){
                           emitter.onNext("HelloWorld"+a);
                       }
                        //发送完成
                        emitter.onComplete();
                    }
                });
 //2.观察者
                Observer<String> observer = new Observer<String>() {
                    //保存连接状态
                    private Disposable disposable;
                    @Override
                    public void onSubscribe(Disposable d) {
                        //保存连接状态
                        disposable=d;
                    }
                    //接收发送的消息
                    @Override
                    public void onNext(String s) {
                        try {
                            Thread.sleep(500);
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                        Log.w("接收到的数据:" , s);
                        //大于11取消订阅
                        if(s.length()>11){
                            disposable.dispose();
                        }
                    }

                    //接受异常通知
                    @Override
                    public void onError(Throwable e) {
                        e.printStackTrace();
                    }

                    //接受发送完毕通知
                    @Override
                    public void onComplete() {
                        System.out.println("接受完成");
                        disposable.dispose();
                    }
                };
                
                //3.观察者订阅被观察者
                observable.subscribe(observer);

3.我写了一个例子包含了一些简单的操作符,里边不包含线程方面的例子因为我也不太懂

包括:链式语法、RxJava操作符
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

I'm the future

希望有幸帮到解决问题

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值