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键,则退出应用程序。

Android使用返回键退出实现_第1张图片

更多相关文章

  1. sencha touch 调用android主函数里的方法(可用与phoneGap开发第三
  2. Android 应用程序获得系统权限
  3. Android应用程序设计——入门配置
  4. Android最新获取oaid的方法及sdk

随机推荐

  1. 在使用ListFragment的setEmptyText时报ja
  2. android 多版本打包之productFlavors 用
  3. JNI基础实验一:调用.so文件--友善之臂Tiny
  4. Android(安卓)- Acitivty生命周期 理解
  5. WebKit – WebKit For Android
  6. android 软键盘 返回键 消失事件 监听
  7. android 之SQLite数据库 增、删、改、查
  8. Android仿今日头条首页的顶部标签栏和底
  9. Android SystemProperties 系统属性分析
  10. android 设置横屏竖屏