美文网首页
RXJava应用系列-场景5

RXJava应用系列-场景5

作者: 虾悠 | 来源:发表于2018-03-26 16:47 被阅读6次

    五、获取验证码倒计时

    场景描述:

    点击获取验证码后60s后可以再次点击获取。

    问题分析:

    计时和计数问题

    伪代码实现:

    TextView codeView;
    int MAX_COUNT=60;
    codeView.setEnabled(false);
            Observable.intervalRange(0, MAX_COUNT, 0, 1, TimeUnit.SECONDS)
                    .observeOn(AndroidSchedulers.mainThread())
                    .subscribe(new Consumer<Long>() {
                        @Override
                        public void accept(Long aLong) throws Exception {
                            codeView.setText((MAX_COUNT-aLong)+"秒后重试");
                        }
                    }, new Consumer<Throwable>() {
                        @Override
                        public void accept(Throwable throwable) throws Exception {
                        }
                    }, new Action() {
                        @Override
                        public void run() throws Exception {
                            codeView.setText("获取验证码");
                            codeView.setEnabled(true);
                        }
                    });
    

    相关文章

      网友评论

          本文标题:RXJava应用系列-场景5

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