美文网首页Android技术知识Android
RxJava具体实现之延迟加载

RxJava具体实现之延迟加载

作者: ChicoChen | 来源:发表于2016-11-16 23:01 被阅读767次

    接触RxJava也蛮长一段时间了,最近也慢慢的应用到实际项目中。

    通常一个App都会有一个启动页,会延迟2-3秒然后进入到主页面,所以,首先想到的是使用RxJava来实现延迟加载。
    RxJava之前我们通常使用的方法是

    new Handler().postDelayed(new Runnable() { 
       @Override    public void run() {
            //TODO
        }
    },3000L);
    

    RxJava的实现方式是

    Observable
            .timer(2, TimeUnit.SECONDS)   
            .subscribe(new Action1<Long>() { 
                 @Override           
                 public void call(Long aLong) { 
                       //TODO
                 } 
            });
    

    代码很容易理解
    Timer 操作符创建一个在给定的时间段之后返回一个特殊值的Observable
    使用方式
    Javadoc: timer(long,TimeUnit)
    Javadoc: timer(long,TimeUnit,Scheduler)

    注意:在TODO位置不能处理UI更新,否则程序会跑出异常,如果非要走TODO位置实现界面UI更新操作

    相关文章

      网友评论

        本文标题:RxJava具体实现之延迟加载

        本文链接:https://www.haomeiwen.com/subject/zfzrpttx.html