Android開發(fā)之獲取短信驗證碼后按鈕背景變化并且出現(xiàn)倒計時
目前越來越多的app在注冊或是進行對應(yīng)操作時,要求獲取短信驗證碼,在點擊了獲取短信驗證碼的按鈕后,就是出現(xiàn)倒計時,比如倒計時120S,在倒計時期間內(nèi),按鈕背景變化并且出現(xiàn)倒計時,當?shù)褂嫊r結(jié)束后,如果你沒有獲取到驗證碼,可以再次點擊。
代碼如下所示:
VerCodeTimer mVerCodeTimer=(Button) findViewById(R.id.login_get_ver_code);
private class VerCodeTimer extends CountDownTimer {
private int seconds;
private int interval;
//millisInFuture為你設(shè)置的此次倒計時的總時長,比如60秒就設(shè)置為60000
//countDownInterval為你設(shè)置的時間間隔,比如一般為1秒,根據(jù)需要自定義。
public VerCodeTimer(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
seconds = (int) (millisInFuture / 1000);
interval= (int) (countDownInterval/1000);
}
//每過你規(guī)定的時間間隔做的操作
@Override
public void onTick(long millisUntilFinished) {
getVerCodeButton.setText((seconds-interval) + "秒后重新獲取");
}
//倒計時結(jié)束時做的操作↓↓
@Override
public void onFinish() {
getVerCodeButton.setTextSize(10);
getVerCodeButton.setText("重新獲取驗證碼");
getVerCodeButton.setClickable(true);
getVerCodeButton.setBackgroundResource(R.drawable.login_get_ver_code_before_bg);
}
}
@Override
public void onBackPressed() {
if (mVerCodeTimer != null)
mVerCodeTimer.cancel();
super.onBackPressed();
}
使用的時候:
getVerCodeButton.setTextSize(11); getVerCodeButton.setClickable(false); getVerCodeButton.setBackgroundResource(R.drawable.login_get_ver_code_ago_bg); mVerCodeTimer = new VerCodeTimer(60000, 1000); mVerCodeTimer.start();
login_edit_normal_bg.xml:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"
android:useLevel="false">
<!-- 背景填充顏色值 -->
<solid android:color="#6c948b" />
<!-- radius值越大,越趨于圓形 -->
<corners android:radius="10dip" />
<!-- 圓角圖像內(nèi)部填充四周的大小 ,將會以此擠壓內(nèi)部布置的view -->
<padding
android:bottom="10dip"
android:left="10dip"
android:right="10dip"
android:top="10dip" />
</shape>
login_edit_passed_bg.xml:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"
android:useLevel="false">
<!-- 背景填充顏色值 -->
<solid android:color="#509989" />
<!-- radius值越大,越趨于圓形 -->
<corners android:radius="10dip" />
<!-- 圓角圖像內(nèi)部填充四周的大小 ,將會以此擠壓內(nèi)部布置的view -->
<padding
android:bottom="10dip"
android:left="10dip"
android:right="10dip"
android:top="10dip" />
</shape>
以上所述是小編給大家介紹了Android開發(fā)之獲取短信驗證碼后按鈕背景變化并且出現(xiàn)倒計時 的全部代碼,希望本段代碼能夠幫助大家。同時感謝大家一直以來對腳本之家網(wǎng)站的支持。
- OpenHarmony實現(xiàn)類Android短信驗證碼及倒計時流程詳解
- Android自定義短信倒計時view流程分析
- Android使用CountDownTimer模擬短信驗證倒計時
- Android使用Kotlin和RxJava 2.×實現(xiàn)短信驗證碼倒計時效果
- Android 用RxBinding與RxJava2實現(xiàn)短信驗證碼倒計時功能
- Android實現(xiàn)發(fā)送短信驗證碼倒計時功能示例
- Android短信驗證碼倒計時驗證的2種常用方式
- Android自定義Chronometer實現(xiàn)短信驗證碼秒表倒計時功能
- Android封裝實現(xiàn)短信驗證碼的獲取倒計時
相關(guān)文章
View Controller Transition實現(xiàn)京東加購物車效果
這篇文章主要介紹了View Controller Transition實現(xiàn)京東加購物車效果,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-02-02
android中GridView實現(xiàn)點擊查看更多功能示例
本篇文章主要介紹了android中GridView實現(xiàn)點擊查看更多功能示例,非常具有實用價值,需要的朋友可以參考下。2017-02-02
Android ContentProvider獲取手機聯(lián)系人實例
這篇文章主要介紹了Android ContentProvider獲取手機聯(lián)系人實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-02-02

