RxJava

一、创建 Observable, Observer ,建立连接observable.subscribe(observer);

1、添加依赖
compile 'io.reactivex.rxjava2:rxjava:2.0.1'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'


private String TAG="MainActivity";
@Override
protected void  onCreate ( Bundle savedInstanceState ) {
    super. onCreate ( savedInstanceState ) ;
    setContentView ( R.layout . activity_main ) ;

    Observable < Integer observable = Observable . create ( new  ObservableOnSubscribe < Integer > () {
        @Override
        public void  subscribe ( ObservableEmitter < Integer e throws  Exception  {
            e . onNext ( 1 ) ;
            e . onNext ( 2 ) ;
            e . onNext ( 3 ) ;
            e . onComplete () ;
        }
    }) ;


    Observer  observer =new  Observer () {
        @Override
        public void  onSubscribe ( Disposable d ) {

            Log . e (TAG , "onSubscribe" ) ;
        }

        @Override
        public void  onNext ( Object value ) {

            Log . e (TAG , "value:--" + value ) ;

        }

        @Override
        public void  onError ( Throwable e ) {

        }

        @Override
        public void  onComplete () {

            Log . e (TAG , "onComplete" ) ;
        }
    } ;


    observable . subscribe (observer) ;
}

二、执行顺序
08-06 10:17:54.468 14600-14600/chzy.org.rxjava E/MainActivity: onSubscribe
08-06 10:17:54.469 14600-14600/chzy.org.rxjava E/MainActivity: value:--1
08-06 10:17:54.469 14600-14600/chzy.org.rxjava E/MainActivity: value:--2
08-06 10:17:54.469 14600-14600/chzy.org.rxjava E/MainActivity: value:--3
08-06 10:17:54.469 14600-14600/chzy.org.rxjava E/MainActivity: onComplete

三、链式
Observable.create(new ObservableOnSubscribe<Integer>() {
    @Override
    public void subscribe(ObservableEmitter<Integer> e) throws Exception {
        e.onNext(1);
        e.onNext(2);
        e.onNext(3);
        e.onComplete();
    }
}) .subscribe(new Observer<Integer>() {
    @Override
    public void onSubscribe(Disposable d) {

        Log.e(TAG,"onSubscribe");
    }

    @Override
    public void onNext(Integer value) {
        Log.e(TAG,"value:--"+value);
    }

    @Override
    public void onError(Throwable e) {
        Log.e(TAG,"onError");
    }

    @Override
    public void onComplete() {
        Log.e(TAG,"onComplete");
    }
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值