1 回のボタン押しのみを登録する方法はありますか? 私の活動の瞬間に、私はそれぞれが別の活動を開始する2つのボタンを持っています。私はこれを防ぎたいと思っており、常に一方または他方のみを実行しています。マルチタッチを無効にすることを考えましたが、それはちょっとハックな気がします。
編集:私はこれをやろうとしました:
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 では、両方のボタンを同時に押すことができます。