再按一次退出程序

我们平时使用手机的时候,经常会看到很多APP退出的时候,都会有提示再按一次退出应用程序,我觉得这种使用这种提示是很有必要的,如果退出时直接弹出Dialog的话,用户体验不太好。

  • 重写onKeyDown方法,监听手机返回键,按下返回键时会触发此方法:

    //记录下时间,初始值为0
    private long exitTime = 0;
    
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){   
    
      //获取此时系统的时间,如果距离上一次按下按键时间不超过2秒,则退出程序
            if((System.currentTimeMillis()-exitTime) > 2000){  
    
                ToastUtil.show("再按一次退出程序");   
    
         //把第一次按下的时间记录起来,当第二次按下,减去第一次按下时间                             
    
                exitTime = System.currentTimeMillis();   
            } else {
    
            //退出程序
                finish();
                System.exit(0);
    
            //处理此事件,不再交给下一级处理
    
            return true;   
        }
        return super.onKeyDown(keyCode, event);
    }
    

你可能感兴趣的:(Android学习)