你好我在android的bluetooth工作,我有一个按钮点击它执行2个活动。第一次点击它应该执行返回空气,在第二次点击它应该执行设定点读取。但是在我的代码中只运行了一个活动,并且在第二次点击时它没有进入第二个活动。在我的代码中,只有一个处理程序来执行这两个活动。我应该有两个处理程序来执行这两项活动吗?
这是我的代码: 这预先形成了第一次点击:
private void returnair() {
//return air
Log.d(TAG, "returnair()");
setContentView(R.layout.dummy);
load = (Button) findViewById(R.id.button1);
load.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
String text = "16 16 36 01 10 00 00 00 00 00 00 00 00 00 00 00 00 88 47 ";
sendMessage(text);
}
});
mChatService = new blootoothchatservice(this, mHandler);
mOutStringBuffer = new StringBuffer("");
}
执行第二次点击:
private void setpoint() {
//reading setpoint
Log.d(TAG, "setpoint()");
setContentView(R.layout.dummy);
load = (Button) findViewById(R.id.button1);
load.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
String resp = "16 16 36 07 02 00 00 00 00 00 00 00 00 00 00 00 00 B7 93 ";
sendsetresponses(resp);
}
});
mChatService = new blootoothchatservice(this, mHandler);
mOutStringBuffer = new StringBuffer("");
}
答案 0 :(得分:7)
应用程序如何知道按钮被点击一次还是两次?您需要存储是否已运行第一个函数,如果已运行第二个函数。这个逻辑可以添加到一次点击事件,如下面的伪代码。
global int click = 0;
onClick() {
if (click == 0) {
click = 1;
returnair();
}
else
setpoint();
}