首页 > 代码库 > android中实现“再按一次退出”功能

android中实现“再按一次退出”功能

  1. 首先,定义一个当前时间的变量:private long mExitTime;这个常量是用来计算得到当前时间的。代码如下:

    mExitTime = System.currentTimeMillis();// 更新mExitTime到当前时间

    定义两次点击退出按钮的最大时间间隔:private long waitTime=2000;当时间间隔小于waitTime时退出程序,大于waitTime时此次点击就是第一次点击了,会弹出再次点击退出的提示。

  2.  

    然后实现页面的onkeydown事件。代码如下:

    public boolean onKeyDown(int keyCode, KeyEvent event) {
      // TODO Auto-generated method stub
      if (keyCode==KeyEvent.KEYCODE_BACK) {
        if ((System.currentTimeMillis()-mExitTime)>waitTime) {
        Toast.makeText(this, "再按一次推出程序", Toast.LENGTH_SHORT).show();
        mExitTime=System.currentTimeMillis();
        }
        else {
          System.exit(0);
        }
        return true;
      }
      return super.onKeyDown(keyCode, event);
    }

  3. 其实现的原理,就是取到你两次点击退出按钮的时间。两次的间隔时间小于2000毫秒时就实现退出,当两次的时间间隔大小2000时,就给用户一个再按一次就退出的提示。怎么样。这样做是不是很方便。当然,还有一个要注意的地方,就是你要在哪个里面实现这个功能,就要在哪个activity中放上这段代码,如果你要放的页面太多,那么你就写一个类,在activity中继承一下这个类就可以了。

android中实现“再按一次退出”功能