Android连续点击两次Back键退出程序
16lz
2021-01-26
思路1:记录上次点击的时间,与本次点击的时间比较,当两次时间间隔小于一定值时,退出,否则提示“再按一次退出程序”,同时更新上次点击时间
private long firstTime = 0; @Override public boolean onKeyUp(int keyCode, KeyEvent event) { // TODO Auto-generated method stub switch(keyCode) { case KeyEvent.KEYCODE_BACK: long secondTime = System.currentTimeMillis(); if (secondTime - firstTime > 2000) { //如果两次按键时间间隔大于2秒,则不退出 Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show(); firstTime = secondTime;//更新firstTime return true; } else { //两次按键小于2秒时,退出应用 System.exit(0); } break; } return super.onKeyUp(keyCode, event); }
思路2:开线程延时处理
private int mBackKeyPressedTimes = 0; @Override public void onBackPressed() { if (mBackKeyPressedTimes == 0) { Toast.makeText(this, "再按一次退出程序 ", Toast.LENGTH_SHORT).show(); mBackKeyPressedTimes = 1; new Thread() { @Override public void run() { try { Thread.sleep(2000); } catch (InterruptedException e) { e.printStackTrace(); } finally { mBackKeyPressedTimes = 0; } } }.start(); return; else{ this.activity.finish(); } } super.onBackPressed(); }
更多相关文章
- EditText去掉光标下划线以及点击隐藏hint
- Android(安卓)TextView中文本点击文字跳转
- Decompiled .class file,bytecode version:52.0(Java 8) Source
- 启动uiautomatorviewer后,点击获取模拟器的时候,出现Unable to con
- ubuntu android 命令环境下操作sqlite
- (Android学习之路)Android中listView结合自定义适配器,并实现item
- Android之PopupWindow+ListView+在item顶部底部跳跃
- RecyclerView 中 item 点击事件的优化
- Android(安卓)平板 控制软键盘只弹出一半,自动盯着界面中EditText