Có cách nào để chỉ đăng ký một lần nhấn nút không? Hiện tại trong hoạt động của tôi, tôi có hai nút mà mỗi nút bắt đầu một hoạt động khác - tại thời điểm này nếu tôi nhấn chúng cùng một lúc, cả hai hoạt động bắt đầu, một hoạt động khác. Tôi muốn ngăn chặn điều này và chỉ có một OR khác đang chạy tại bất kỳ thời điểm nào. Tôi đã nghĩ đến việc vô hiệu hóa cảm ứng đa điểm nhưng điều đó lại khiến tôi cảm thấy khó chịu.Ngừng người dùng nhấn hai nút cùng một lúc?
EDIT: Tôi đã cố gắng để làm điều này:
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();
}
}
tôi vẫn có thể bấm cả hai nút cùng lúc trên tôi Galaxy S2 GT-i9100.
lần nút là nhấp chuột, bạn có thể vô hiệu hóa các nút hoặc làm cho nó vô hình – Raghunandan
Bạn có gọi 'startActivity' bên trong' onClick' hoặc nó được hoãn lại không? –