android中Handler简介&利用Handler实现计时功能


android Handler 计时 postDelayed 

Handler为android系统的线程通信工具,承担着主线程与分线程,分线程之间的通信功能,经常用到的有post(),sendMessage() 方法,前者是将一个线程加入线程队列,后者是发送一个消息到消息队列中,post方法还有两个变种,分别为定时发送postAtTime()和延时发送postDelayed()。

计时功能的实现主要利用了postDelayed()函数,即在run函数中以一秒为延时,不断调用自身,直到外部结束线程。代码如下:

Java代码   收藏代码
  1. public class HandlerDemoActivity extends Activity {  
  2.     /** Called when the activity is first created. */  
  3.     Count count;  
  4.     int i = 0;  
  5.     @Override  
  6.     public void onCreate(Bundle savedInstanceState) {  
  7.         super.onCreate(savedInstanceState);  
  8.         setContentView(R.layout.main);  
  9.         count = new Count();  
  10.         handler.post(count);  
  11.     }  
  12.     class Count implements Runnable{  
  13.             @Override  
  14.             public void run() {  
  15.                 Log.i("count",String.valueOf(i++));  
  16.                 handler.postDelayed(count, 1000);  
  17.             }  
  18.     };  
  19.       
  20.     final Handler handler = new Handler(){  
  21.         @Override  
  22.         public void handleMessage(Message msg) {  
  23.             super.handleMessage(msg);  
  24.         }  
  25.     };  


你可能感兴趣的:(android中Handler简介&利用Handler实现计时功能)