msg.what = 31;是什么意思
时间: 2024-05-19 07:17:28 浏览: 71
这段代码看起来是在使用 Android 的 Handler 进行消息传递。msg.what 表示消息的类型,它是一个 int 类型的变量。在这个例子中,msg.what 被赋值为 31,代表这是一个自定义的消息类型。当 Handler 接收到这个消息时,可以根据消息类型来执行相应的操作。具体的操作需要根据代码上下文来进行分析。
相关问题
}else if (msg.what==1){ showDialog("连接成功!"); warning_show.setText("已连接灯光\n"); IPText.setEnabled(false);//锁定ip地址和端口号 isConnecting = true; }else if (msg.what==3){ warning_show.setText("已断开连接\n"); 现在的问题是只有一次性我怎么让他重复上一个代码
如果您想让某个代码段重复执行,则可以将其放在一个循环中,以便在满足某些条件时重复执行该代码段。在您的示例代码中,您可以使用一个 while 循环来重复执行某些代码,如下所示:
```
while (isConnecting) {
// 这里放需要重复执行的代码段
}
```
isConnecting 是一个布尔变量,它在连接成功时设置为 true,在断开连接时设置为 false。因此,只要 isConnecting 为 true,该代码段就会重复执行。您可以根据需要将需要重复执行的代码段放在 while 循环中的花括号中。
new Thread(){ @Override public void run() { super.run(); getCpu(); str_memoryPercent = _memoryPercent.getUsedPercentValue(); Message msg = new Message(); msg.what = 2; handler.sendMessageDelayed(msg,0); } }.start(); Message msg = new Message(); isUpdate = false; msg.what = 1; handler.sendMessageDelayed(msg, 3000); 停止刷新这个
如果你想停止刷新这个,可以在 `handler` 中通过 `removeMessages` 方法移除相应的消息,例如:
```java
// 在适当的位置调用该方法来停止刷新
handler.removeMessages(1);
handler.removeMessages(2);
```
这样就可以停止发送编号为 1 和 2 的消息,从而停止刷新了。