back返回和退出怎么写
发布网友
发布时间:2022-04-23 01:14
我来回答
共2个回答
热心网友
时间:2023-07-15 13:06
项目要做这个功能,于是在度娘上摘代码.基本上实现方式很多,现在我把我这种实现贴出来哈,参考一下
第一种.
重写你项目首页Activity的onKeyDown方法.例如在HomeActivity中
private boolean isExit = false;//声明成员变量
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK){
ToQuitTheApp();
return false;
}else{
return super.onKeyDown(keyCode, event);
}
}
/**
* 是否退出应用的方法
*/
private void ToQuitTheApp() {
if (isExit) {
// ACTION_MAIN with category CATEGORY_HOME 启动主屏幕
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
startActivity(intent);
System.exit(0);// 使虚拟机停止运行并退出程序
} else {
isExit = true;
Toast.makeText(this, "Click again to exit the APP.", Toast.LENGTH_SHORT).show();
/** 如果3秒内没有点击的话发送消息把判断条件重置.*/
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
isExit = false;
}
},3000);
}
}
第二种监听back的方法:
对于Android 2.0开始又多出了一种新的方法,对于Activity 可以单独获取Back键的按下事件,直接重写onBackPressed方法即可,代码如下
@Override
public void onBackPressed() {
// 这里处理逻辑代码,大家注意:该方法仅适用于2.0或更新版的sdk
return;
}
热心网友
时间:2023-07-15 13:07
这是为了方便使用,如果你想直接退出,比较快的方法是直接开出任务栏然后删除这个任务