自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Android -- 倒計(jì)時(shí)的實(shí)現(xiàn)

移動(dòng)開(kāi)發(fā) Android
CountDownTimer這個(gè)類,實(shí)現(xiàn)了倒計(jì)時(shí)的功能。將后臺(tái)線程的創(chuàng)建和Handler隊(duì)列封裝成一個(gè)方便的類調(diào)用。這個(gè)類比較簡(jiǎn)單,只有四個(gè)方法:onTick,onFinsh、cancel和start。其中前面兩個(gè)是抽象方法,所以要重寫(xiě)一下。

CountDownTimer這個(gè)類,實(shí)現(xiàn)了倒計(jì)時(shí)的功能。將后臺(tái)線程的創(chuàng)建和Handler隊(duì)列封裝成一個(gè)方便的類調(diào)用。

這個(gè)類比較簡(jiǎn)單,只有四個(gè)方法:onTick,onFinsh、cancel和start。其中前面兩個(gè)是抽象方法,所以要重寫(xiě)一下。

下面是官方給的一個(gè)小例子:

  1. new CountdownTimer(300001000) {   
  2.     public void onTick(long millisUntilFinished) {   
  3.         mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);   
  4.     }   
  5.     public void onFinish() {   
  6.         mTextField.setText("done!");   
  7.     }   
  8.  }.start(); 


  1. ackage com.yydcdut.daojishi; 
  2.  
  3. import android.os.Bundle; 
  4. import android.os.CountDownTimer; 
  5. import android.app.Activity; 
  6. import android.view.Menu; 
  7. import android.widget.TextView; 
  8. import android.widget.Toast; 
  9.  
  10. public class MainActivity extends Activity { 
  11.     private MyCount mc;   
  12.     private TextView tv; 
  13.     @Override 
  14.     protected void onCreate(Bundle savedInstanceState) { 
  15.         super.onCreate(savedInstanceState); 
  16.         setContentView(R.layout.activity_main);tv = (TextView)findViewById(R.id.show);   
  17.         mc = new MyCount(300001000);   
  18.         mc.start(); 
  19.     } 
  20.  
  21.     @Override 
  22.     public boolean onCreateOptionsMenu(Menu menu) { 
  23.         // Inflate the menu; this adds items to the action bar if it is present. 
  24.         getMenuInflater().inflate(R.menu.main, menu); 
  25.         return true
  26.     } 
  27.      
  28.     /*定義一個(gè)倒計(jì)時(shí)的內(nèi)部類*/   
  29.     class MyCount extends CountDownTimer {      
  30.         public MyCount(long millisInFuture, long countDownInterval) {      
  31.             super(millisInFuture, countDownInterval);      
  32.         }      
  33.         @Override      
  34.         public void onFinish() {      
  35.             tv.setText("finish");         
  36.         }      
  37.         @Override      
  38.         public void onTick(long millisUntilFinished) {      
  39.             tv.setText("請(qǐng)等待30秒(" + millisUntilFinished / 1000 + ")...");      
  40.             Toast.makeText(MainActivity.this, millisUntilFinished / 1000 + "", Toast.LENGTH_LONG).show();//toast有顯示時(shí)間延遲        
  41.         }     
  42.     }      
  43.  

 主要是重寫(xiě)onTick和onFinsh這兩個(gè)方法,onFinish()中的代碼是計(jì)時(shí)器結(jié)束的時(shí)候要做的事情;onTick(Long m)中的代碼是你倒計(jì)時(shí)開(kāi)始時(shí)要做的事情,參數(shù)m是直到完成的時(shí)間,構(gòu)造方法MyCount()中的兩個(gè)參數(shù)中,前者是倒計(jì)的時(shí)間數(shù),后者是倒計(jì)每秒中間的間隔時(shí)間,都是以毫秒為單位。例如要倒計(jì)時(shí)30秒,每秒中間間隔時(shí)間是1秒,兩個(gè)參數(shù)可以這樣寫(xiě)MyCount(30000,1000)。 將后臺(tái)線程的創(chuàng)建和Handler隊(duì)列封裝成為了一個(gè)方便的類調(diào)用。

當(dāng)你想取消的時(shí)候使用mc.cancel()方法就行了。

本文鏈接:http://www.cnblogs.com/yydcdut/p/3908966.html

 

責(zé)任編輯:chenqingxiang 來(lái)源: cnblogs
相關(guān)推薦

2022-10-21 15:42:21

倒計(jì)時(shí)鴻蒙

2013-10-10 09:23:15

Android 4.4Kitkat

2025-04-11 08:42:37

JavaScript倒計(jì)時(shí)前端

2011-04-11 09:17:28

Ubuntu倒計(jì)時(shí)

2017-07-20 16:21:52

UICountDownTidelay

2015-03-23 17:58:04

驗(yàn)證碼倒計(jì)時(shí)并行

2014-03-21 13:46:45

2015-01-21 16:07:57

Android源碼驗(yàn)證碼倒計(jì)時(shí)

2011-04-11 09:50:56

Ubuntu 11.0

2014-02-18 10:36:33

2025-03-14 00:00:00

2013-04-09 10:01:18

微軟Windows XP

2019-12-13 19:37:00

BashLinux命令

2020-10-28 17:54:49

成都信息安全

2013-10-08 09:24:39

Windows 8.1Windows 8

2022-06-14 08:45:27

瀏覽器IEWindows

2022-06-29 21:22:49

CSS動(dòng)感倒計(jì)時(shí)

2011-03-06 15:49:25

webOSBlackBerry

2011-05-23 08:43:40

jQueryjQuery插件
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)