message.what()是干啥的
时间: 2024-05-28 09:10:06 浏览: 14
message.what()是Android中的一个方法,用于获取一个消息对象中的消息类型(即消息代码)。在Android中,消息通常是通过Handler对象进行处理和传递的,每个消息都有一个对应的消息类型。通过调用message.what()方法,我们可以判断当前消息的类型,从而进行相应的处理。通常,我们会将不同类型的消息分配不同的消息代码,以便在处理消息时能够快速识别消息类型。
相关问题
Message.what
在Android中,Message对象有一个属性叫做"what",用于标识消息的类型或者是消息的标志。它是一个整型值,可以用来区分不同类型的消息。
在发送消息时,你可以通过Message的`what`属性来设置消息的类型。例如,你可以定义一些常量来表示不同的消息类型,然后将对应的常量值赋给`what`属性。
在接收消息时,你可以通过判断消息的`what`属性来区分不同的消息类型,并采取相应的处理逻辑。你可以在处理消息的地方使用`switch`语句或者`if-else`语句来根据`what`属性的值进行分支处理。
下面是一个简单的示例代码,展示了如何使用`what`属性来发送和接收消息:
```java
// 发送消息
final int MSG_TYPE_1 = 1;
final int MSG_TYPE_2 = 2;
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MSG_TYPE_1:
// 处理类型为MSG_TYPE_1的消息
break;
case MSG_TYPE_2:
// 处理类型为MSG_TYPE_2的消息
break;
default:
// 处理其他类型的消息
break;
}
}
};
Message message = Message.obtain();
message.what = MSG_TYPE_1; // 设置消息类型为MSG_TYPE_1
handler.sendMessage(message);
// 接收消息
// 在Handler中重写handleMessage()方法进行处理
```
希望这个解释能帮到你!如果还有其他问题,请随时提问。
怎么设置message.what()
在 Android 中,可以通过 Handler 对象的 sendMessage() 方法来发送消息,其中消息可以通过 Message 对象来构建。Message 对象有一个 what 字段,可以用来标识消息类型。
要设置 Message 对象的 what 字段,可以调用 Message 对象的 setWhat() 方法,例如:
```
Message msg = new Message();
msg.setWhat(1);
```
上面的代码将创建一个 Message 对象,并将其 what 字段设置为 1。在接收消息时,可以根据不同的 what 值来执行不同的操作。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)