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();
代码比较简单 但是时间设置的比较长的时候 倒计时没有那么准备 只是学习用,不推荐用于项目开发