欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android中CountDownTimer 實現(xiàn)倒計時功能

 更新時間:2017年05月06日 10:45:19   作者:木木木木頭腦袋  
本篇文章主要介紹了Android中CountDownTimer 實現(xiàn)倒計時功能,CountDownTimer 是android 自帶的一個倒計時類,具有一定的參考價值,感興趣的小伙伴們可以參考一下

CountDownTimer

CountDownTimer 是android 自帶的一個倒計時類,使用這個類可以很簡單的實現(xiàn) 倒計時功能

CountDownTimer 的實現(xiàn)方式 

new CountDownTimer(6000,1000) {//第一個參數(shù)表示的是倒計時的總時間,第二參數(shù)表示的是倒計時的間隔時間。
          @Override
          public void onTick(long millisUntilFinished) {//倒計時的過程
            textView.setText(millisUntilFinished / 1000 + "秒");
          }

          @Override
          public void onFinish() {//倒計時結(jié)束
            textView.setText("倒計時結(jié)束");
          }
        }.start();

實現(xiàn)效果

取消計時器

調(diào)用 CountDownTimer 的 cancel() 方法,可以為我們?nèi)∠嫊r器:但是這個方法,只有在 android 5.0 以上才有效果,在android 5.0 以下并沒有效果。如果需要在android 5.0 以下的系統(tǒng)中也使用 cancel,需要我們自己根據(jù) CountDownTimer 源碼中的 實現(xiàn)方式,重新實現(xiàn)一下。

  /**
   * Cancel the countdown.
   */
  public synchronized final void cancel() {
    mCancelled = true;
    mHandler.removeMessages(MSG);
  }


 private static final int MSG = 1;


  // handles counting down
  private Handler mHandler = new Handler() {

    @Override
    public void handleMessage(Message msg) {

      synchronized (CountDownTimer.this) {
        if (mCancelled) {
          return;
        }

        final long millisLeft = mStopTimeInFuture - SystemClock.elapsedRealtime();

        if (millisLeft <= 0) {
          onFinish();
        } else if (millisLeft < mCountdownInterval) {
          // no tick, just delay until done
          sendMessageDelayed(obtainMessage(MSG), millisLeft);
        } else {
          long lastTickStart = SystemClock.elapsedRealtime();
          onTick(millisLeft);

          // take into account user's onTick taking time to execute
          long delay = lastTickStart + mCountdownInterval - SystemClock.elapsedRealtime();

          // special case: user's onTick took more than interval to
          // complete, skip to next interval
          while (delay < 0) delay += mCountdownInterval;

          sendMessageDelayed(obtainMessage(MSG), delay);
        }
      }
    }
  };

由于在 android 5.0以上 增加了一個

private boolean mCancelled = false;

所以我們只需要在 5.0 以下的系統(tǒng)中,去掉

 if (mCancelled) {
          return;
        }

去掉這個判斷即可。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Android實現(xiàn)圖片預覽與保存功能

    Android實現(xiàn)圖片預覽與保存功能

    在App開發(fā)中,通常為了省流提高加載速度提升用戶體驗我們通常在列表中或新聞中的插圖都是以縮略圖壓縮過的圖片來進行展示,當用戶點擊圖片時我們再去加載真正像素的大圖讓用戶預覽。本文將利用Flutter實現(xiàn)這一功能,需要的可以參考一下
    2022-04-04
  • Android仿QQ空間底部菜單示例代碼

    Android仿QQ空間底部菜單示例代碼

    Android仿QQ空間底部菜單的Demo,發(fā)現(xiàn)這個Demo有很多Bug,布局用了很多神秘數(shù)字。于是研究了一下并自己寫了一個與大家分享下
    2013-06-06
  • Android 軟鍵盤狀態(tài)并隱藏輸入法的實例

    Android 軟鍵盤狀態(tài)并隱藏輸入法的實例

    這篇文章主要介紹了Android 軟鍵盤狀態(tài)并隱藏輸入法的實例的相關(guān)資料,這里提供實例實現(xiàn)軟鍵盤切換并隱藏輸入法的鍵盤,需要的朋友可以參考下
    2017-09-09
  • Flutter?Dio?簡單封裝demo

    Flutter?Dio?簡單封裝demo

    這篇文章主要為大家介紹了Flutter Dio簡單封裝示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • Android10自動連接WiFi問題的解決

    Android10自動連接WiFi問題的解決

    這篇文章主要介紹了Android10自動連接WiFi問題的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • Android圖片加載框架Gilde源碼層深入分析

    Android圖片加載框架Gilde源碼層深入分析

    Glide就像Picasso,可以從多個源去加載和顯示圖片,同時也兼顧緩存和在做圖片處理的時候維持一個低內(nèi)存消耗。它已經(jīng)在Google官方APP中使用了,就和Picasso一樣受歡迎
    2022-11-11
  • Android  Activity生命周期和堆棧管理的詳解

    Android Activity生命周期和堆棧管理的詳解

    這篇文章主要介紹了Android Activity生命周期和堆棧管理的詳解的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • Android中轉(zhuǎn)場動畫的實現(xiàn)與兼容性處理

    Android中轉(zhuǎn)場動畫的實現(xiàn)與兼容性處理

    大家都知道Android 中的動畫有很多,除了在一個界面上使用幀動畫、屬性動畫將一個或多個 View 進行動畫處理以外,還可以用于兩個界面之間過渡、跳轉(zhuǎn)。本文的內(nèi)容包括:Android 5.0+ 的轉(zhuǎn)場動畫和Android 4.X 模擬實現(xiàn) Android 5.0+ 轉(zhuǎn)場效果。有需要的可以參考借鑒。
    2016-10-10
  • Android實現(xiàn)萬能自定義陰影控件實例代碼

    Android實現(xiàn)萬能自定義陰影控件實例代碼

    這篇文章主要給大家介紹了關(guān)于Android實現(xiàn)萬能自定義陰影控件的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對各位Android開發(fā)者們具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-08-08
  • Android之帶group指示器的ExpandableListView(自寫)

    Android之帶group指示器的ExpandableListView(自寫)

    Android缺省的ExpandableListView的group header無法固定在界面上,在網(wǎng)上搜索了好多都不盡人意,于是乎在別人的基礎(chǔ)上改進了一點點,原理都差不多
    2013-06-06

最新評論