Android学习历程3-倒计时类的简单介绍

倒计时类的简单介绍

在做安卓开发的时候,倒计时是一个使用的比较频繁的一个类,比如,点击一个获取验证码的按钮之后,我们要让按钮在点击之后的多少秒之内不能再次被点击,这次在项目开发过程中遇到了这样一个需求,因此在这里将其简单实现方式成列出来,

构造函数
public CountDownTimer (long millisInFuture, long countDownInterval)
参数 millisInFuture 从开始调用start()到倒计时完成并onFinish()方法被调用的毫秒数。(译者注:倒计时时间,单位毫秒) countDownInterval 接收onTick(long)回调的间隔时间。(译者注:单位毫秒)

公共方法
public final void cancel () 取消倒计时(译者:取消后,再次启动会重新开始倒计时)

public abstract void onFinish () 倒计时完成时被调用

public abstract void onTick (long millisUntilFinished) 固定间隔被调用
参数 millisUntilFinished 倒计时剩余时间。

public synchronized final CountDownTimer start () 启动倒计时

/* 定义一个倒计时的内部类 */
class TimeCount extends CountDownTimer {
    public TimeCount(long millisInFuture, long countDownInterval) {
        super(millisInFuture, countDownInterval);// 参数依次为总时长,和计时的时间间隔
    }

    @Override
    public void onFinish() {// 计时完毕时触发
        mCountFlag = false;
        bt_get_verification_code.setEnabled(true);
        bt_get_verification_code.setText(MResource.findString(mContext, "password_bind_phone_layout_string_get_verify_code"));
        // iv_getVerifyCode.setOnClickListener((OnClickListener) mContext);
    }

    @Override
    public void onTick(long millisUntilFinished) {// 计时过程显示
        String ts = millisUntilFinished / 1000 + "";
        ts += mContext.getResources().getString(MResource.findString(mContext, "password_bind_phone_layout_string_get_verify_code_again"));
        bt_get_verification_code.setText(ts);
        bt_get_verification_code.setEnabled(false);
    }
}

倒计时的类的使用方法比较简单,,再次就不在多做介绍!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值