利用ValueAnimator实现CountDownTimer效果

btn_code.setClickable(false);
        ValueAnimator valueAnimator = ValueAnimator.ofInt(59,0);
        valueAnimator.setDuration(59 * 1000);
        valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
            @Override
            public void onAnimationUpdate(ValueAnimator animation) {
                Integer value = (Integer) animation.getAnimatedValue();
                btn_code.setText(value + "秒后重新获取");
            }
        });
        valueAnimator.addListener(new AnimatorListenerAdapter() {
            @Override
            public void onAnimationEnd(Animator animation) {
                super.onAnimationEnd(animation);
                btn_code.setClickable(true);
                btn_code.setText("发送验证码");
            }
        });
        valueAnimator.start();

 代码比较简单 但是时间设置的比较长的时候 倒计时没有那么准备 只是学习用,不推荐用于项目开发

猜你喜欢

转载自u010991855.iteye.com/blog/2258663
今日推荐