Handler消息传递机制 Handler消息传递机制实例
时间: 2023-09-05 11:13:39 浏览: 116
Handler消息传递机制是Android中常用的一种线程间通信方式,可以在不同线程之间传递数据,实现异步消息处理。基本原理是通过Handler对象将消息封装成Message对象,然后通过sendMessage()或post()方法发送到消息队列中,最终由Looper对象将消息从队列中取出,并交给Handler的handleMessage()方法进行处理。
以下是一个简单的Handler消息传递机制实例:
1. 创建Handler对象
```
Handler mHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
// 处理消息
}
};
```
2. 创建子线程并发送消息
```
new Thread(new Runnable() {
@Override
public void run() {
// 执行耗时操作
// 创建消息对象
Message msg = mHandler.obtainMessage();
msg.what = 1; // 消息标志
msg.obj = "Hello World!"; // 消息内容
// 发送消息到消息队列
mHandler.sendMessage(msg);
}
}).start();
```
3. 在主线程接收消息并处理
```
@Override
public void handleMessage(Message msg) {
switch(msg.what){
case 1:
String content = msg.obj.toString();
// 处理消息内容
break;
default:
break;
}
}
```
这样就完成了子线程向主线程发送消息的操作。通过Handler消息传递机制,我们可以轻松实现线程间的通信,提高应用程序的用户体验。
阅读全文