双击返回
双击顾名思义,就是点击了两次,
在程序中监听按键时间onKeyDown 从而进行自己想要的操作
下面是双击返回代码实现
/*** 菜单、返回键响应*/@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK) { // 监控/拦截/屏蔽返回键exitBy2Click();return true; // 调用双击退出函数} else if (keyCode == KeyEvent.KEYCODE_MENU) {// MENU键// 监控/拦截菜单键return true;}return super.onKeyDown(keyCode, event);}/*** 双击退出函数*/private static Boolean isExit = false;private void exitBy2Click() {Timer tExit = null;if (isExit == false) {isExit = true; // 准备退出Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();tExit = new Timer();tExit.schedule(new TimerTask() {@Overridepublic void run() {isExit = false; // 取消退出}}, 2000); // 如果2秒钟内没有按下返回键,则启动定时器取消掉刚才执行的任务} else {finish();System.exit(0);}}
拦截menu键
重写onKeyDown方法
/*** 菜单键响应*/@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_MENU) {// MENU键// 监控/拦截菜单键return true;}return super.onKeyDown(keyCode, event);}