亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Android中使用CountDownTimer實現倒計時

發布時間:2021-03-29 17:25:56 來源:億速云 閱讀:204 作者:Leah 欄目:移動開發

怎么在Android中使用CountDownTimer實現倒計時?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

(1)public abstract void onTick(long millisUntilFinished); 

固定間隔被調用
(2)public abstract void onFinish();
倒計時完成時被調用
(3)public synchronized final void cancel():
取消倒計時,當再次啟動會重新開始倒計時
(4)public synchronized final CountDownTimer start():
啟動倒計時

在這里可以看到前面兩個是抽象方法,需要重寫。

簡單看一下代碼:

package com.per.countdowntimer;

import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.widget.TextView;


public class MainActivity extends Activity {
 private TextView mTvShow;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 mTvShow = (TextView) findViewById(R.id.show);
 }

 /**
 * 取消倒計時
 * @param v
 */
 public void oncancel(View v) {
 timer.cancel();
 }

 /**
 * 開始倒計時
 * @param v
 */
 public void restart(View v) {
 timer.start();
 }

 private CountDownTimer timer = new CountDownTimer(10000, 1000) {

 @Override
 public void onTick(long millisUntilFinished) {
  mTvShow.setText((millisUntilFinished / 1000) + "秒后可重發");
 }

 @Override
 public void onFinish() {
  mTvShow.setEnabled(true);
  mTvShow.setText("獲取驗證碼");
 }
 };
}

順帶附上XML布局文件

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:background="@android:color/white"
 android:orientation="vertical"
 android:padding="16dp">

 <TextView
 android:id="@+id/show"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:text="@string/hello_world" />

 <Button
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginTop="10dp"
 android:onClick="restart"
 android:text="取消" />

 <Button
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_marginTop="10dp"
 android:onClick="oncancel"
 android:text="結束" />

</LinearLayout>

最后說明一下:

CountDownTimer timer = new CountDownTimer(10000, 1000):以毫秒為單位,第一個參數是指從開始調用start()方法到倒計時完成的時候onFinish()方法被調用這段時間的毫秒數,也就是倒計時總的時間;第二個參數表示間隔多少毫秒調用一次 onTick方法,例如間隔1000毫秒。
在調用的時候直接使用timer.start();

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

德庆县| 营口市| 鄂温| 阜平县| 安义县| 新丰县| 汶川县| 邻水| 阆中市| 中江县| 慈利县| 揭西县| 吉隆县| 黄梅县| 兴城市| 武乡县| 贡嘎县| 莱芜市| 科技| 鄂州市| 城市| 蒙阴县| 雅江县| 沁源县| 凤阳县| 前郭尔| 中超| 华亭县| 宁晋县| 丹阳市| 山东省| 祁阳县| 和平县| 十堰市| 阳山县| 望江县| 镇江市| 深水埗区| 赤城县| 海晏县| 谷城县|