当我们想退出应用程序时,一般都会采用按物理按键(后退键)的做法,当用户在按两次后退键的时候就将应用程序退出,即销毁当前的Activity();

重写onBackPressed()方法即可: 代码如下: private int clickCount =0; @Override public void onBackPressed() { // TODO Auto-generated method stub //super.onBackPressed(); if ( clickCount < 1){ Toast.makeText( this , "再按一次后退键退出应用程序!" ,Toast. LENGTH_SHORT ).show(); clickCount ++; } else { finish(); } } 注意,需要将父类的onBackPressed()方法去掉,否则无论后面怎么写当按一次后退键的时候程序就会退出。 但这种写法有不好的地方,就是当用户在不小心按下两次后退键的时候都会退出,这样就不好,没有很好的用户体验。 为此我们将程序改进,当用户在按下第二次次退出键后如果和第一次之间的时间超过1s,我们就不将程序退出,视为无效的操作。 改进的代码如下: private long lastClickTime = 0; @Override public void onBackPressed() { // TODO Auto-generated method stub //super.onBackPressed(); if ( lastClickTime <= 0){ Toast.makeText( this , "再按一次后退键退出应用程序!" ,Toast. LENGTH_SHORT ).show(); lastClickTime = System.currentTimeMillis(); } else { long currentClickTime = System.currentTimeMillis(); if (currentClickTime- lastClickTime < 1000){ finish(); } else { Toast.makeText( this , "再按一次后退键退出应用程序!" ,Toast. LENGTH_SHORT ).show(); lastClickTime = currentClickTime; } } }

更多相关文章

  1. android安装和卸载的adb命令
  2. 让应用程序具体相应权限
  3. Android(安卓)ANR 详解
  4. Android应用程序组件间通信(一)——Intent类简介
  5. android 程序退出
  6. android 退出按钮
  7. 【翻译】Android安全之Linux内核篇
  8. android自动化测试工具之DroidPilot
  9. iOS学习――iOS应用程序生命周期(四)

随机推荐

  1. 10个常见的 Android(安卓)新手误区
  2. Android之Android的数据存储--SD卡
  3. Android(安卓)sdk manager不能更新下载缓
  4. 【转官方】Android(安卓)ADB调试命令、支
  5. webview中的javascript调用android命令实
  6. 五年之内,Android(安卓)或将被取代?
  7. android IBeacon 开发(一)搜索IBeacon基站
  8. 《转》给Android应用开发者的十个建议
  9. 一、Android体系及系统架构
  10. 新浪微博开放平台开发-android客户端(2)