在mainActivity裏寫事件
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
System.out.println(KeyEvent.KEYCODE_BACK+"--------------------"+event.getKeyCode()+"---------------------"+event.getAction());
if(event.getKeyCode()==KeyEvent.KEYCODE_BACK && event.getAction()==KeyEvent.ACTION_DOWN){
// 確認對話框
final AlertDialog isExit = new AlertDialog.Builder(this).create();
// 對話框標題
isExit.setTitle("系統提示");
// 對話框消息
isExit.setMessage("確定要退出嗎");
// 實例化對話框上的按鈕點擊事件監聽
DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case DialogInterface.BUTTON1:// "確認"按鈕退出程序
MainActivity.this.finish();
android.os.Process.killProcess(android.os.Process.myPid());
System.exit(0);
break;
case DialogInterface.BUTTON2:// "取消"第二個按鈕取消對話框
isExit.cancel();
break;
default:
break;
}
}
};
// 註冊監聽
isExit.setButton("確定", listener);
isExit.setButton2("取消", listener);
// 顯示對話框
isExit.show();
return true;
}
return super.dispatchKeyEvent(event);
}