2010-04-22 67 views
6

当写:的Android CountDownTimer

CountDownTimer timer = new CountDownTimer(1000, 100) 
{ 
     @Override 
     public void onTick(long l) 
     { 

     } 

     @Override 
     public void onFinish() 
     { 

     }; 
}.start(); 

咱们这是开始一个新的线程来处理蜱?如果不是,那么究竟发生了什么?

回答

11

CountDownTimerimplementation使用HandlersendMessageDelayed(),所以不需要后台线程。这确实意味着如果您在代码的其他地方捆绑主应用程序线程,计时器将不会更新。从多个出版物,久经考验

1

定义:

“另一个计时器设有内置类CountDownTimer的。这种封装后台线程和处理器队列到一个方便的调用类的创建。 ..“

+1

没有创建后台线程,查看[implementation](http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/2.3。 4_r1 /机器人/ OS/CountDownTimer.java)。 – 2012-07-27 18:38:20