WhiteDG
CountDownButton
Java

⏳ A button with a countdown function

Last updated Jun 9, 2025
89
Stars
10
Forks
1
Issues
0
Stars/day
Attention Score
17
Language breakdown
Java 100.0%
Files click to expand
README

CountDownButton

CountDownButton是一个具有倒计时功能的自定义按钮

demo

下载

dependencies {
    compile 'com.white.countdownbutton:countdownbtn:1.0.4'
}

使用

// 布局文件:
<com.white.countdownbutton.CountDownButton
        android:id="@+id/cd_btn"
        android:layoutwidth="matchparent"
        android:layoutheight="wrapcontent"
        android:text="get verifyCode"
        app:countDown="60000"
        app:countDownFormat="Please wait (%ds)"
        app:countDownInterval="1000"
        app:enableCountDown="true"
        app:cdFinishText="重新获取验证码"
        />
        
// Activity代码:
...
mCountDownButton = (CountDownButton) findViewById(R.id.cd_btn);
// 设置点击事件
mCountDownButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // 点击按钮要执行的操作,同时开始倒计时
                Toast.makeText(activity, "click countdown button", Toast.LENGTH_SHORT).show();
            }
        });

mBtnStop = (Button) findViewById(R.id.btn_stop) mBtnStop.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 调用removeCountDown()即可取消当前倒计时 mCountDownButton.removeCountDown(); } });

属性和方法

你可以在在xml中配置的属性

属性 | 说明 ---|--- countDown | 倒计时总时长(单位为毫秒),默认60000毫秒 countDownFormat | 倒计时过程中按钮文本的格式,默认"%d",直接显示剩余秒数 countDownInterval | 倒计时间隔(单位为毫秒),默认1000毫秒 enableCountDown | 倒计时是否可用,默认为true cdFinishText | 倒计时结束后按钮上显示的文本,默认为原始文本

你可以通过以下方法在代码中动态设置相关的属性

方法 | 说明 ---|--- setEnableCountDown(boolean enableCountDown) | 设置倒计时是否可用 setCountDownFormat(String countDownFormat) | 设置倒计时过程中按钮文本的格式 setCount(long count) | 设置倒计时总时长,单位为毫秒 setInterval(long interval) | 设置倒计时间隔,单位为毫秒 setCountDown(long count, long interval, String countDownFormat) | 同时设置三个属性 setCDFinishText(String cdFinishText) | 设置倒计时结束后按钮上显示的文本 isCountDownNow() | 是否正在倒计时 removeCountDown() | 取消倒计时

Licence

MIT License @Wh1te

© 2026 GitRepoTrend · WhiteDG/CountDownButton · Updated daily from GitHub