有没有办法只注册一个按钮按下?目前在我的活动中,我有两个按钮,每个按钮都开始另一个活动 - 目前,如果我同时按下它们,两个活动开始,一个在另一个之上。我想防止这种情况发生,并且在任何给定时间只有一个或另一个运行。我曾想过禁用多点触控,但这对我来说有点骇人听闻。
编辑:我试过这样做:
public class MainActivity extends Activity {
Button btn_send;
Button btn_receive;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn_send = (Button) findViewById(R.id.btn_send);
btn_receive = (Button) findViewById(R.id.btn_receive);
OnClickListener listener = new OnClickListener() {
@Override
public void onClick(View v) {
if (v.equals(btn_send)) {
if (isWifiConnected()) {
btn_receive.setClickable(false);
startActivity(new Intent(MainActivity.this,
SendActivity.class));
} else {
Toast.makeText(MainActivity.this,
"Wifi connection required", Toast.LENGTH_SHORT)
.show();
}
} else if (v.equals(btn_receive)) {
if (isWifiConnected()) {
btn_send.setClickable(false);
startActivity(new Intent(MainActivity.this,
ReceiveActivity.class));
} else {
Toast.makeText(MainActivity.this,
"Wifi connection required", Toast.LENGTH_SHORT)
.show();
}
}
}
};
btn_send.setOnClickListener(listener);
btn_receive.setOnClickListener(listener);
}
@Override
public void onPause() {
btn_send.setClickable(true);
btn_receive.setClickable(true);
super.onPause();
}
}
我仍然可以在 Galaxy S2 GT-i9100 上同时按下两个按钮。