sendEmptyMessage
时间: 2023-08-08 09:09:36 浏览: 52
`sendEmptyMessage`是`Handler`类的一个方法,用于向消息队列中添加一个空消息。当消息处理器处理到这个空消息时,会调用`handleMessage`方法。这个方法通常用于在消息队列中插入一个标记,表示某个事件已经发生,然后在处理器中根据这个标记执行相应的操作。
下面是一个示例代码:
```
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MSG_EVENT_1:
// 处理事件1
break;
case MSG_EVENT_2:
// 处理事件2
break;
case MSG_FLAG_1:
// 处理标记1
break;
case MSG_FLAG_2:
// 处理标记2
break;
default:
break;
}
}
};
// 发送一个空消息表示标记1已经插入到消息队列中
handler.sendEmptyMessage(MSG_FLAG_1);
```
在上面的代码中,我们定义了一个`Handler`对象,并重写了它的`handleMessage`方法,根据`Message`对象的`what`字段来判断当前处理的是哪个事件或标记。然后,我们通过`sendEmptyMessage`方法向消息队列中添加了一个空消息,表示标记1已经插入到消息队列中。当消息处理器处理到这个空消息时,会调用`handleMessage`方法,并根据`what`字段的值来执行相应的操作。