Я хочу знать, как использовать коммутационный футляр при использовании интерфейса handleMessage. как показано ниже в коде, в методе run() я отправляю разные сообщения, а У меня есть только один обработчик с интерфейсом handleMessage(), я хочу знать, как использовать коммутационный футляр для обработки различных отправленных сообщений.Как использовать переключатель-чехол с ручкой Интерфейс сообщений
в OnCreate:
private void initObjs() {
Log.w(TAG, CSubTag.bullet("initObjs"));
this.mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
..
..
}
};
}
в беге():
public void run() {
//initiating connection
BluetoothSocket rfcSocket = mSPPCtrl.rfcConnect();
if (rfcSocket.isConnected()) {
Message msg = mHandler.obtainMessage();
Bundle b = new Bundle();
b.putString("CONNECTED", "RFC-SOCKET CONNECTED");
msg.setData(b);
mHandler.sendMessage(msg);
//assigning stream variables
try {
this.mRFCOS = rfcSocket.getOutputStream();
} catch (IOException e) {
e.printStackTrace();
}
try {
this.mRFCIS = rfcSocket.getInputStream();
} catch (IOException e) {
e.printStackTrace();
}
} else {
Message msg = mHandler.obtainMessage();
Bundle b = new Bundle();
b.putString("DISCONNECTED", "RFC-SOCKET NOT CONNECTED");
msg.setData(b);
mHandler.sendMessage(msg);
}
бы у пожалуйста, уточнить с кодом образца ?? потому что я не знаю, как назначить msg.what значение – LetsamrIt
{ \t Сообщение msg = mHandler.obtainMessage(); \t Bundle b = new Bundle(); \t if (rfcSocket.isConnected()) { b.putString ("CONNECTED", "RFC-SOCKET CONNECTED"); msg.what = 0; } else { b.putString ("ОТКЛЮЧЕНО", "RFC-SOCKET NOT CONNECTED"); msg.what = 1; } \t msg.setData (b); \t mHandler.sendMessage (msg); } – XuSing