Android 拦截 onKeyDown,并实现“再按一次退出”
ITPOW2017/3/16 21:04:41
private long exitTipTime = 0; @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { if (System.currentTimeMillis() - exitTipTime <= 2000) { return super.onKeyDown(keyCode, event); // 由于是在入口 Activity 中,我们交给 super,它会帮我们退出。 } else { exitTipTime = System.currentTimeMillis(); Toast.makeText(this, "再按一次退出", Toast.LENGTH_SHORT).show(); return true; // 返回 true,表示我已经处理了 onKeyDown,你们其他人不要再管了。 } } else if (keyCode == KeyEvent.KEYCODE_MENU) { Toast.makeText(this, "我拦截了 Menu 键", Toast.LENGTH_SHORT).show(); return true; } return super.onKeyDown(keyCode, event); }
相关阅读
Android 时间:new Date() 及其格式化、System.currentTimeMillis()
<<返回首页<<