RxJava创建之骚操作

Timer

个人理解:订阅后经过一定时间返回一个可观察对象
Timer
骚操作:

/**
     * 延迟执行
     * @param delayTime 延迟时间(单位秒)
     * @return  Observable<Long>
     */
   public static Observable<Long> delayDo(int delayTime){
        return Observable.timer(delayTime,TimeUnit.SECONDS,AndroidSchedulers.mainThread());
   }

Interval

个人理解:自订阅开始返回一个自0开始无限递增的整数序列
Interval
骚操作:

/**
 * 执行倒计时操作
 * @param time 倒计时(单位秒)
 * @return 剩下多少秒的Observable
 */
public static Observable<Integer> countDown(int time) {
    if (time < 0) time = 0;
    final int countTime = time;
    //0延迟,间隔1秒
    return Observable.interval(0, 1, TimeUnit.SECONDS)//按的时间间隔发射一个无限递增的整数序列。//0,1,2,3...
            .take(countTime + 1)
            .subscribeOn(AndroidSchedulers.mainThread())
            .observeOn(AndroidSchedulers.mainThread())
            .map(new Func1<Long, Integer>() {//变换
                @Override
                public Integer call(Long increaseTime) {
                    return countTime - increaseTime.intValue();
                }
            });
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值