一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Android - Android開發之獲取短信驗證碼后按鈕背景變化并且出現倒計時

Android開發之獲取短信驗證碼后按鈕背景變化并且出現倒計時

2021-05-06 14:59Android開發網 Android

在開發是經常會遇到獲取短信驗證碼,然后獲取驗證碼后需要等待n秒倒計時,這時是不能再次發送短信請求的,這是需要一個倒計時程序,本文給大家分享了實現此功能的代碼,需要的朋友參考下

目前越來越多的app在注冊或是進行對應操作時,要求獲取短信驗證碼,在點擊了獲取短信驗證碼的按鈕后,就是出現倒計時,比如倒計時120S,在倒計時期間內,按鈕背景變化并且出現倒計時,當倒計時結束后,如果你沒有獲取到驗證碼,可以再次點擊。

代碼如下所示:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
VerCodeTimer mVerCodeTimer=(Button) findViewById(R.id.login_get_ver_code);
private class VerCodeTimer extends CountDownTimer {
    private int seconds;
    private int interval;
    //millisInFuture為你設置的此次倒計時的總時長,比如60秒就設置為60000
    //countDownInterval為你設置的時間間隔,比如一般為1秒,根據需要自定義。
    public VerCodeTimer(long millisInFuture, long countDownInterval) {
      super(millisInFuture, countDownInterval);
      seconds = (int) (millisInFuture / 1000);
      interval= (int) (countDownInterval/1000);
    }
    //每過你規定的時間間隔做的操作
    @Override
    public void onTick(long millisUntilFinished) {
      getVerCodeButton.setText((seconds-interval) + "秒后重新獲取");
    }
    //倒計時結束時做的操作↓↓
    @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();
  }

使用的時候:

?
1
2
3
4
5
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:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?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" />
  <!-- 圓角圖像內部填充四周的大小 ,將會以此擠壓內部布置的view -->
  <padding
    android:bottom="10dip"
    android:left="10dip"
    android:right="10dip"
    android:top="10dip" />
</shape>

login_edit_passed_bg.xml:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?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" />
  <!-- 圓角圖像內部填充四周的大小 ,將會以此擠壓內部布置的view -->
  <padding
    android:bottom="10dip"
    android:left="10dip"
    android:right="10dip"
    android:top="10dip" />
</shape>

以上所述是小編給大家介紹了Android開發之獲取短信驗證碼后按鈕背景變化并且出現倒計時 的全部代碼,希望本段代碼能夠幫助大家。同時感謝大家一直以來對服務器之家網站的支持。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 美女扒开屁股让我桶免费 | 欧美日韩一区二区综合在线视频 | 久久久精品国产免费A片胖妇女 | www.羞羞视频| 久久亚洲免费视频 | 999久久久免费精品国产牛牛 | 91色视 | 秋霞理论最新三级理论最 | 明星ai智能人脸替换造梦在线播放 | 国产a免费观看 | 国产精品青青青高清在线密亚 | 免费看男女做好爽好硬视频 | 国内精品九一在线播放 | 精品国产综合区久久久久久 | 2020韩国r级理论片在线观看 | 国产精品免费视频能看 | 日本-区二区三区免费精品 日本破处 | 午夜福利在线观看6080 | 精品国产无限资源免费观看 | 欧美成人tv | 国产成人亚洲精品91专区手机 | 黑人巨大videosjapan高清 黑人好大 | 欧美一区二区三区视视频 | 高清视频大片免费观看 | 成人免费体验区福利云点播 | 青草青视频 | 天堂资源8中文最新版 | 人人福利 | 久久中文字幕综合不卡一二区 | 青草视频网址 | 91进入蜜桃臀在线播放 | 国产精品免费网站 | 四虎影视永久免费视频观看 | 国产高清免费在线 | 亚洲成A人片在线观看中文L | 美女用屁股把人吞进肚子 | 美女脱一净二净不带胸罩 | 天天综合色天天综合色sb | 很黄的孕妇a级黄毛片 | 国产麻豆精品原创 | 免费的强动漫人物的 |