Android 实现按两次返回键退出程序(两种方法)
Android实现按两次返回键退出程序(两种方法)
第一种方法:
//是否退出程序 privatestaticBooleanisExit=false; //定时触发器 privatestaticTimertExit=null;
第二种方法:
publicbooleanonKeyUp(intkeyCode,KeyEventevent){ if(keyCode==KeyEvent.KEYCODE_BACK){ if(isExit==false){ isExit=true; if(tExit!=null){ tExit.cancel();//将原任务从队列中移除 } //重新实例一个定时器 tExit=newTimer(); TimerTasktask=newTimerTask(){ @Override publicvoidrun(){ isExit=false; } }; Toast.makeText(this,"再按一次退出程序",Toast.LENGTH_SHORT).show(); //延时两秒触发task任务 tExit.schedule(task,2000); }else{ finish(); System.exit(0); } returntrue; } returnsuper.onKeyUp(keyCode,event); }
原理很简单:定义一个TimerTask定时器和一个是否退出程序的标识isExit,第一次按返回键,赋值isExit标识为true,开启定时器TimerTask任务,两秒钟后赋值isExit标识为false,所以用户在这两秒中内再按一次返回键,则退出程序。否则定时器TimerTask任务执行,标志为false。原理就是这么简单~
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!