一、 使用
private Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
// xxx
}
};
// 发送消息
mHandler.sendMessage();
mHandler.sendEmptyMessageDelayed();
二、 类们
- Handler
- Looper
- Message
- MessageQueue
三、 一句话带过(仅仅是常用流程)
每个线程中有一个 Looper, 一直在循环从 当前的 MessageQueue 中区 Message 消息,Handler 通过发送消息这个 MessageQueue中塞 Message, Message 中 target 保存的当前的 Handler, 取出来的直接调用了 Handler 中的 handleMessage 方法。