Android
发布时间:2022-04-28 发布网站:大佬教程 code.js-code.com
大佬教程收集整理的这篇文章主要介绍了按后退键退出Android程序,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<div id="cnblogs_posT_Body">
主要的目的是按后退键的时候,让程序能够退出。
实现起来的思路:
1.捕获后退键被按了这个事件。
@Override
public Boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
//按下的如果是BACK,同时没有重复
//DO SOMETHING
}
return super.onKeyDown(keyCode, event);
}
2.在后退键被按的事件里退出程序
这里也有两种方式:直接退出程序,或者退出到主屏幕。
1)退出程序的方法有两种:
android.o@R_607_3820@.killProcess(android.o@R_607_3820@.myPid());
我试了这两种方法,但是奇怪的是,在1.5模拟器下,程序确实被KILL了,但是马上Android又重新启动了程序。
另外还有一种方式,比较友好,可以释放资源,我觉得可行,就是实现起来麻烦一点,需要逐级退出,重写onResume()方法:
@Override
protected void onResume() {
super.onResume();
if(mExiTing){
finish();
}
}
2)退出到主屏幕
这个比较简单,新建一个主屏幕的Intent就可以。
Intent home = new Intent(Intent.ACTION_MAIN);
home.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOp);
home.addCategory(Intent.CATEGORY_HOME);
startActivity(homE);
我最后采用了按后退键回到主屏幕的方式,实现代码如下:
@Override
public Boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { // 按下的如果是BACK,同时没有重复
intent home = new Intent(Intent.ACTION_MAIN);
home.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOp);
home.addCategory(Intent.CATEGORY_HOME);
startActivity(homE);
}
return super.onKeyDown(keyCode, event);
}
大佬总结
以上是大佬教程为你收集整理的按后退键退出Android程序全部内容,希望文章能够帮你解决按后退键退出Android程序所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。