handler 消息
时间: 2023-09-09 09:08:09 浏览: 84
Handler是Android中常用的消息处理机制,可以用来在不同线程之间传递和处理消息。Handler的基本原理是:创建一个Handler对象,将该对象与一个Looper对象绑定,然后在不同的线程中发送消息到该Handler对象,Handler会将这些消息加入到消息队列中,并通过Looper对象来循环处理这些消息。
下面是一个简单的使用Handler发送和处理消息的示例代码:
```
// 创建Handler对象,并与主线程的Looper对象绑定
Handler handler = new Handler(Looper.getMainLooper()) {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case 1:
// 处理消息1
break;
case 2:
// 处理消息2
break;
default:
break;
}
}
};
// 在子线程中发送消息到主线程的Handler对象
new Thread(new Runnable() {
@Override
public void run() {
Message message = Message.obtain();
message.what = 1;
handler.sendMessage(message);
}
}).start();
```
在这个示例中,我们创建了一个Handler对象,并在主线程中与主线程的Looper对象绑定。然后在子线程中发送一个消息到主线程的Handler对象,主线程的Handler对象会接收到这个消息,并调用handleMessage()方法来处理这个消息。
阅读全文