private Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MSG_SEND_OK:
break;
case MSG_SEND_ERROR:
break;
case MSG_RECV_OK:
break;
case MSG_LINK_CONNECTED:
break;
case MSG_LINK_DISCONNECTED:
break;
case MSG_DATA_CHANNEL_AVAILABLE:
break;
case MAS_DATA_CHANNEL_UNAVAILABLE:
break;
case MSG_SENDING:
break;
case MSG_CONNECTING:
break;
case MSG_DISCONNECTING:
break;
case MSG_SEND_DONE:
break;
case MSG_UPDATE_PROGRESS:
break;
default:
break;
}
}
};
请问, 以下代码是什么意思?
mHandler.obtainMessage(MSG_SENDING).sendToTarget();
mHandler.obtainMessage(MSG_LINK_DISCONNECTED).sendToTarget();
------解决思路----------------------
就是发送一个Message,obtainMessage中的参数会赋值给Message.what。使用提问中的两句代码发送消息后,mHandler 中的switch将分别匹配到case MSG_SENDING: break;和case MSG_LINK_DISCONNECTED: break;
------解决思路----------------------
这两句代码跟提问中的代码实现同样的功能
// 发送一个只包含what的消息
handler.sendEmptyMessage(MSG_SENDING);
handler.sendEmptyMessage(MSG_LINK_DISCONNECTED);
------解决思路----------------------
是的