android:实现点击两次退出程序

主界面中重写dispatchKeyEvent方法:

  1. 获取返回按钮点击事件;
  2. 记录一次点击事件发生时间,第二次点击的时候和第一次时间取差;
@Override
	public boolean dispatchKeyEvent(KeyEvent event) {
		if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) {
			if (event.getAction() == KeyEvent.ACTION_DOWN && event.getRepeatCount() == 0) {
				long secondTime = System.currentTimeMillis();
				if (secondTime - firstTime > 2000) { // 如果两次按键时间间隔大于2秒,则不退出
					KToast.showInfo(context, "再按一次退出程序");
					firstTime = secondTime;// 更新firstTime
					return true;
				} else {
					finish();
				}
			}
			return true;
		}
		return super.dispatchKeyEvent(event);
	}

 

你可能感兴趣的:(Android原创)