RxJava2简单使用

刚刚开始学习RxJava,希望在以后的项目中可以用到
此文章仅对用法做简单记录

首先在build.gradle中引入依赖 :
compile 'io.reactivex.rxjava2:rxjava:2.1.1'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'

     /**
     * Observable对象发送一个事件:你好
     */

    Observable sender = Observable.create(new ObservableOnSubscribe() {

        @Override
        public void subscribe(@NonNull ObservableEmitter e) throws Exception {

            //发送字符串   "你好"
            e.onNext("你好");

            //发送完毕
            e.onComplete();

        }
    }).delay(5, TimeUnit.SECONDS)                           //延迟5秒发送
            
            .subscribeOn(Schedulers.newThread())                  //将发送者运行在子线程

            .observeOn(AndroidSchedulers.mainThread());     //将接受者运行在主线程


    /**
     * Observer对象接受这个事件
     */
    Observer receiver = new Observer() {
        @Override
        public void onSubscribe(@NonNull Disposable d) {

        }

        @Override
        public void onNext(@NonNull String s) {

            //接受事件 s

            Log.i("zzz", "s >>> " + s);
        }

        @Override
        public void onError(@NonNull Throwable e) {

        }

        @Override
        public void onComplete() {

        }
    };

    /**
     * 发送者和接收者绑定
     */
    sender.subscribe(receiver);

你可能感兴趣的:(RxJava2简单使用)