星空网 > 软件开发 > 操作系统

Activity按下2次退出

先看下onBackPressed和onKeyDown的区别

在Android上有两种方法来获取该按钮的事件

1.直接获取按钮按下事件,此方法兼容Android 1.0到Android 2.1 也是常规方法,直接重写Activity的onKeyDown方法即可,代码如下:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
    if (keyCode == KeyEvent.KEYCODE_BACK) { //按下的如果是BACK,同时没有重复
       Toast.makeText(ml78.this,"返回键Back键测试",1).show();
        return true;
    }

    return super.onKeyDown(keyCode, event);
}

而对于Android 2.0开始又多出了一种新的方法,对于Activity 可以单独获取Back键的按下事件,直接重写onBackPressed方法即可,代码如下

@Override
public void onBackPressed() {
// 这里处理逻辑代码,大家注意:该方法仅适用于2.0或更新版的sdk
return;
}

1  现在实现对根Activity按下2此返回键实现退出

 

private static boolean isSysExit = false;  @Override  public void onBackPressed() {    // TODO Auto-generated method stub    if(!isSysExit){      isSysExit = true;            DensityUtil.showToast(this, "再按一次退出");      Timer timer = new Timer();      timer.schedule(new TimerTask() {                @Override        public void run() {          // TODO Auto-generated method stub          isSysExit =false;        }      }, 2000);    }else {      finish();    }  }

 

2  在根Activity中重写后退按钮响应事件,当按后退按钮的时候把Activity退置到后台

@Override  public boolean onKeyDown(int keyCode, KeyEvent event) {    // TODO Auto-generated method stub    //当按下返回键时吧Activity退至到后台    if(keyCode ==KeyEvent.KEYCODE_BACK){      moveTaskToBack(true);      return true;    }        return super.onKeyDown(keyCode, event);  }

 




原标题:Activity按下2次退出

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

教育产品:https://www.goluckyvip.com/tag/34682.html
教育出海:https://www.goluckyvip.com/tag/34683.html
教育科技:https://www.goluckyvip.com/tag/34684.html
接单云:https://www.goluckyvip.com/tag/34685.html
接外贸订单:https://www.goluckyvip.com/tag/34686.html
揭秘跨境电商:https://www.goluckyvip.com/tag/34687.html
三亚有哪些酒店值得入住?:https://www.vstour.cn/a/366173.html
零售晚报:丽人丽妆2023年扭亏为盈 玉容初、美壹堂等自有品牌增速超40% :https://www.kjdsnews.com/a/1836649.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流