RxLifecycle2.0的简单使用

直接上代码

 

 

public class RxLifeActivity extends RxAppCompatActivity {

    /**
     * RxLifecycle使用:在当前activity中继承RxAppCompatActivity
     * <p>     * ActivityEvent:手动设置指定在什么时候取消订阅,下列枚举
     * CREATE,
     * START,
     * RESUME,
     * PAUSE,
     * STOP,
     * DESTROY
     */
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_rx_life);

        Flowable.interval(3, 2, TimeUnit.SECONDS)
                .subscribeOn(Schedulers.io())
                .compose(this.bindUntilEvent(ActivityEvent.PAUSE)) //手动设置在activity onPause的时候取消订阅
.observeOn(AndroidSchedulers.mainThread())
                .subscribe(aLong -> Log.e("liuqiang", "RxLifeActivityOnCreate:" + aLong));

    }

    @Override
    protected void onStart() {
        super.onStart();
        Flowable.interval(6, 3, TimeUnit.SECONDS)
                //bindToLifecycle的自动取消订阅示例,因为是在onStart的时候调用,所以在onStop的时候自动取消订阅
.compose(this.bindToLifecycle()) //设置在默认的生命周期中取消订阅
.subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(aLong -> Log.e("liuqiang", "RxLifeActivityOnStart:" + aLong));

    }
}

--------------------- 本文来自 LQ-刘强 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq_33429583/article/details/78205877?utm_source=copy

posted @ 2018-10-08 15:53  天涯海角路  阅读(453)  评论(0)    收藏  举报