FariyTale 发表于 2013-1-30 04:18:58

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

Handler为android系统的线程通信工具,承担着主线程与分线程,分线程之间的通信功能,经常用到的有post(),sendMessage() 方法,前者是将一个线程加入线程队列,后者是发送一个消息到消息队列中,post方法还有两个变种,分别为定时发送postAtTime()和延时发送postDelayed()。
计时功能的实现主要利用了postDelayed()函数,即在run函数中以一秒为延时,不断调用自身,直到外部结束线程。代码如下:
public class HandlerDemoActivity extends Activity {    /** Called when the activity is first created. */    Count count;    int i = 0;@Override    public void onCreate(Bundle savedInstanceState) {      super.onCreate(savedInstanceState);      setContentView(R.layout.main);      count = new Count();      handler.post(count);    }    class Count implements Runnable{      @Override      public void run() {      Log.i("count",String.valueOf(i++));      handler.postDelayed(count, 1000);      }    };      final Handler handler = new Handler(){    @Override    public void handleMessage(Message msg) {    super.handleMessage(msg);    }    };} 

 
页: [1]
查看完整版本: android中Handler简介&利用Handler实现计时功能