80,351
社区成员
发帖
与我相关
我的任务
分享
class ParentActivity extends Activity{
.......
private class ReadThread extends Thread {
@Override
public void run() {
super.run();
while (!isInterrupted()) {
......
try {
onDataReceived(buffer, size);
} catch (IOException e) {
e.printStackTrace();
return;
}
}
}
}
protected abstract void onDataReceived(final byte[] buffer, final int size);
protected void DisplayError(int resourceId, Activity activity) {
AlertDialog.Builder b = new AlertDialog.Builder(activity);
b.setTitle("Error");
b.setMessage(resourceId);
b.setPositiveButton("OK", new OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//SerialPortActivity.this.finish();
}
});
b.show();
}
}
class SubA extends ParentActivity {
@Override
protected void onDataReceived(byte[] buffer, int size) {
....
Message msg = mHandler.obtainMessage();
msg.what = 1;
mHandler.sendMessage(msg);
}
private Handler mHandler = new Handler() {
@Override
public synchronized void handleMessage(Message msg) {
switch (msg.what) {
case 1: {
DisplayError(R.string.error_op, TagFunctionActivity.this);
break;
}
case 2: {
DisplayError(R.string.success_op, TagFunctionActivity.this);
break;
}
}
}
};
}
class SubB extends ParentActivity {
@Override
protected void onDataReceived(byte[] buffer, int size) {
....
Message msg = mHandler.obtainMessage();
msg.what = 1;
mHandler.sendMessage(msg);
}
private Handler mHandler = new Handler() {
@Override
public synchronized void handleMessage(Message msg) {
switch (msg.what) {
case 1: {
......
}
}
}
};
}