Looper.loop方法何时调用
Looper.loop方法何时调用 ????????????????????
Looper.loop方法何时调用 ????????????????????
2016-05-22
class LooperThread extends Thread {
public Handler mHandler;
public void run() {
Looper.prepare();//给线程创建一个消息循环
mHandler = new Handler() {
public void handleMessage(Message msg) {
// process incoming messages here
}
};
Looper.loop();//使消息循环起作用,从消息队列里取消息,处理消息
}
}
注:写在Looper.loop()之后的代码不会被立即执行,当调用后 mHandler.getLooper().quit()后,loop才会中止,其后的代码才能得以运行。Looper对象通过MessageQueue 来存放消息和事件。一个线程只能有一个Looper,对应一个MessageQueue。
举报