RxJava基本使用

gradle里面配置java

compile 'io.reactivex:rxjava:1.0.14'
 compile 'io.reactivex:rxandroid:1.0.1'

//部分代码展现react

public void test(){

        //建立一个观察者
        Observer<Object> observer = new Observer<Object>() {

            @Override
            public void onCompleted() {
                Log.i(TAG, "Completed---");
            }

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

            @Override
            public void onNext(Object s) {
                Log.i(TAG, s.toString());
            }
        };

        //使用Observable.create()建立被观察者
        Observable observable = Observable.create(new Observable.OnSubscribe<String>() {

            @Override
            public void call(Subscriber<? super String> subscriber) {

                print(subscriber);
            }
        });

        //建立订阅关系
        observable.subscribe(observer);
    }

    public void print(Subscriber<? super String> subscriber){

        for(int i=0; i<10000; i++){

            subscriber.onNext(i + "");
        }

        //这里表示执行结束
        subscriber.onCompleted();
    }

RxJava基本使用
红色标记表示该耗时操做占用了主线程,因此须要开启一个子线程去执行耗时操做,这里就不写了。android

相关文章
相关标签/搜索