Android開發中用到了倒計時,查了一些資料,後來看了原始碼,寫了出來,與大家分享,不當之處歡迎指正。
自己要寫個類來繼承CountDownTimer,如下面代碼所示,重寫兩個方法,就是在兩個方法中寫上你要乾的事情。onFinish()中的代碼是結束的時候要做的事情;onTick(Long m)中的代碼是你倒計時開始時要做的事情,參數m是直到完成的時間,實際應用中這個參數必須有但是感覺不到對應用的影響。構造方法MyCount()中的兩個參數中,前者是倒計的時間數,後者是倒計每秒中間的間隔時間,都是以毫秒為單位。例如要倒計時30秒,每秒中間間隔時間是1秒,兩個參數可以這樣寫MyCount(30000,1000)。
public class MyCount extends CountDownTimer {</p><p>TextView tt = (TextView) findViewById(R.id.position);</p><p>public MyCount(long millisInFuture, long countDownInterval) {<br />super(millisInFuture, countDownInterval);<br />}</p><p>@Override<br />public void onFinish() {<br />tt.setText("");</p><p>}</p><p>@Override<br />public void onTick(long millisUntilFinished) {<br />tt.setText("請等待60秒(" + millisUntilFinished / 1000 + ")...");<br />}</p><p>}
在你的代碼中執行個體化一個MyCount:
MyCount myCount = new MyCount(30000,1000);
開始倒計時:
myCount.start();