我正在使用线程来执行一些 BT 任务。我正在尝试向 UI 线程发送消息,以便我可以根据我的 BT 线程进行 UI 工作。为此,我正在使用处理程序,但我不知道如何检索发送给处理程序的数据。
要发送数据,我使用:
handler.obtainMessage(intCode).sendToTarget();
其中 intCode 是一个 int。我的处理程序看起来像这样。
Handler handler = new Handler(){
@Override
public void handleMessage(Message msg){
Bundle data = msg.getData();
int code = data.getInt("what");
Log.d(LOG_TAG, "Msg: "+code);
}
}
但是代码的值永远不会是 0。在执行 .obtainMessage(int) 时如何获取发送的值?该值是否未存储在具有键“what”的 Bundle 中?