亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android 編程下的計時器代碼

 更新時間:2013年08月21日 15:09:20   作者:  
在安卓 APP 的手機號注冊邏輯中,經常會有將激活碼發(fā)送到手機的環(huán)節(jié),這個環(huán)節(jié)中絕大多數的應用考慮到網絡延遲或服務器壓力以及短信服務商的延遲等原因,會給用戶提供一個重新獲取激活碼的按鈕

同樣,為了防止用戶惡意的頻繁發(fā)送激活碼,應用中需要對用戶發(fā)送激活碼的時間間隔進行限制,這時就需要用到倒計時器了,大概流程是這樣的:頁面初始化的時候,按鈕為可點擊狀態(tài),用戶在點擊“發(fā)送激活碼”后按鈕變?yōu)椴豢牲c擊狀態(tài),同時按鈕上的文字變?yōu)榈褂嫊r狀態(tài),倒計時結束后,按鈕變?yōu)榭牲c擊狀態(tài),文字變?yōu)椤鞍l(fā)送激活碼”。具體邏輯看下面的代碼:

復制代碼 代碼如下:

package cn.sunzn.countdown;

import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity implements OnClickListener {

    private TimeCount timeCount;

    private Button btn_reget_captcha;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        init();
    }

    private void init() {
        initView();
        initData();
    }

    private void initData() {
        timeCount = new TimeCount(60000, 1000);
    }

    private void initView() {
        btn_reget_captcha = (Button) findViewById(R.id.btn_reget_captcha);
        btn_reget_captcha.setOnClickListener(this);
    }

    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    public void onClick(View v) {
        int id = v.getId();
        switch (id) {
        case R.id.btn_reget_captcha:
            if (btn_reget_captcha.isClickable()) {
                // TODO run your logic that you want to do
                timeCount.start();
            }
            break;

        default:
            break;
        }
    }

    class TimeCount extends CountDownTimer {
        public TimeCount(long millisInFuture, long countDownInterval) {
            super(millisInFuture, countDownInterval);
        }

        public void onFinish() {
            btn_reget_captcha.setText("發(fā)送激活碼");
            btn_reget_captcha.setClickable(true);
        }

        public void onTick(long millisUntilFinished) {
            btn_reget_captcha.setClickable(false);
            btn_reget_captcha.setText("在" + millisUntilFinished / 1000 + "秒后點擊重發(fā)激活碼");
        }
    }

}


最后,附上工程代碼:CountDown

相關文章

  • Android 運用@JvmName解決函數簽名沖突問題詳解

    Android 運用@JvmName解決函數簽名沖突問題詳解

    JvmName注解是Kotlin提供的一個可以變更編譯器輸出的注解,這里簡單的介紹一下其使用規(guī)則,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-07-07
  • Android判斷登錄情況

    Android判斷登錄情況

    這篇文章主要介紹了Android判斷登錄情況,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • 完整的Android表情功能處理方案

    完整的Android表情功能處理方案

    這篇文章主要為大家詳細介紹了完整的Android表情功能處理方案,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • 使用Timer實現網頁勻速加載的進度條樣式

    使用Timer實現網頁勻速加載的進度條樣式

    這篇文章主要介紹了使用Timer實現網頁勻速加載的進度條樣式,在使用WebView加載網頁時有時候網速等原因加載比較慢時,影響用戶的體驗度,今天小編給大家分享使用timer實現網頁勻速加載的進度條樣式,需要的的朋友參考下吧
    2017-01-01
  • android實現撲克卡片翻轉

    android實現撲克卡片翻轉

    這篇文章主要為大家詳細介紹了android實現撲克卡片翻轉,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Kotlin協(xié)程的基礎與使用示例詳解

    Kotlin協(xié)程的基礎與使用示例詳解

    這篇文章主要為大家介紹了Kotlin協(xié)程的基礎與使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • Android實現監(jiān)聽音量的變化

    Android實現監(jiān)聽音量的變化

    這篇文章主要為大家詳細介紹了Android實現監(jiān)聽音量的變化,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • Android獲取SD卡上圖片和視頻縮略圖的小例子

    Android獲取SD卡上圖片和視頻縮略圖的小例子

    如果我們需要快速提取圖片和視頻縮略圖可以直接訪問android.provider.MediaStore.Images.Thumbnails 和android.provider.MediaStore.Video.Thumbnails這兩個數據庫,即可查詢出來縮略圖 。
    2013-06-06
  • Android點擊Button實現功能的幾種方法總結

    Android點擊Button實現功能的幾種方法總結

    當Button有多個或者Button的使用次數很多時,我們需要采用綁定監(jiān)聽器的做法,其實,綁定監(jiān)聽器也有幾種方法,不過,我在這里就不一一列舉了,畢竟那些方法在實際的應用中也不常見
    2013-10-10
  • Android模仿美團頂部的滑動菜單實例代碼

    Android模仿美團頂部的滑動菜單實例代碼

    最近在工作遇到一個需要,要做一個滑動菜單,實現的效果類似美團頂部的滑動菜單,所以下面這篇文章主要給大家介紹了關于Android如何模仿美團頂部滑動菜單的相關資料,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧。
    2017-08-08

最新評論