@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_BACK) { //監控/攔截/屏蔽返回鍵 dialog(); return false; } else if(keyCode == KeyEvent.KEYCODE_MENU) { if(isShowButton) { rly.setVisibility(View.VISIBLE); isShowButton = false; }else { rly.setVisibility(View.GONE); isShowButton = true; } return false; } else if(keyCode == KeyEvent.KEYCODE_HOME) { //由於Home鍵為系統鍵,此處不能捕獲,需要重寫onAttachedToWindow() return false; } return super.onKeyDown(keyCode, event); } protected void dialog() { AlertDialog.Builder builder = new Builder(WebActivity.this); builder.setMessage("確定要退出嗎?"); builder.setTitle("提示"); builder.setPositiveButton("確認", new android.content.DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); WebActivity.this.finish(); } }); builder.setNegativeButton("取消", new android.content.DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builder.create().show(); } /* // 攔截/屏蔽系統Home鍵 public void onAttachedToWindow() { this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); super.onAttachedToWindow(); } */