1.直接獲取按鈕按下事件,此方法兼容Android 1.0到Android 2.1 也是常規方法,直接重寫Activity的onKeyDown方法即可,代碼如下:
@Override public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
//按下的如果是BACK,同時沒有重複
Toast.makeText(ml78.this,"魔力去吧Back鍵測試",1).show();
return true;
}
return super.onKeyDown(keyCode, event);
}
而對於Android 2.0開始又多出了一種新的方法,對於Activity 可以單獨獲取Back鍵的按下事件,直接重寫onBackPressed方法即可,代碼如下
@Override public void onBackPressed() {
// 這裏處理邏輯代碼,大家注意:該方法僅適用於2.0或更新版的sdk
return;
}
如果想實現直接提示退出程序則可參考以下代碼:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
ExitDialog(MainActivity.this).show();
return true;
}
return super.onKeyDown(keyCode, event);
}
彈出DIALOG實現如下: