Android使用返回键退出实现
16lz
2021-01-23
Android中通过双击返回键退出应用
在Android应用程序,经常可以通过双击返回键退出应用程序,例如QQ空间。下面将通过代码演示该过程。
1.设置退出标志符号
boolean isExist=false;默认为fasle
2.覆写onKeyDown()方法
监听Back键,当keyCode==KeyEvent.KEYCODE_BACK,则执行将isExist设置为ture,当第二次按back键时,应用程序退出,但两次时间间隔需要在一定时间内。
1 @Override 2 public boolean onKeyDown(int keyCode, KeyEvent event) { 3 if(keyCode==KeyEvent.KEYCODE_BACK){ 4 if(!isExist){ 5 isExist=true; 6 Toast.makeText(getApplicationContext(), "再按一次退出程序", Toast.LENGTH_SHORT).show(); 7 handler.sendEmptyMessageDelayed(0,2000); 8 return false; 9 }10 else{11 Intent intent=new Intent(Intent.ACTION_MAIN);12 intent.addCategory(Intent.CATEGORY_HOME);13 startActivity(intent);14 System.exit(0);15 }16 }17 return super.onKeyDown(keyCode, event);18 }
3.设置Handler对象
1 private Handler handler=new Handler(){2 public void handleMessage(android.os.Message msg) {3 isExist=false; //取消退出标志位4 };5 };
4.基本思想
当在当前Activity下,按下Back键,onKeyDown()中获取事件,识别是否是Back键,如果是Back键,则将退出标志isExist设置为true,然后启动handler.sendEmptyMessageDelayed()方法,2秒后发送一个消息队列,在消息处理方法中,将标志isExist设置为false。如果在2秒内又按下Back键,则退出应用程序。
更多相关文章
- sencha touch 调用android主函数里的方法(可用与phoneGap开发第三
- Android 应用程序获得系统权限
- Android应用程序设计——入门配置
- Android最新获取oaid的方法及sdk