Android 开发 监听back并且执行home键功能

时间:2023-03-09 16:18:57
Android 开发 监听back并且执行home键功能

方法一:

在activity中重写onBackPressed()方法 ,注意此处一定要注释或者删除 super.onBackPressed();方法

 @Override
public void onBackPressed() {
// super.onBackPressed();
Intent home = new Intent(Intent.ACTION_MAIN);
home.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
home.addCategory(Intent.CATEGORY_HOME);
startActivity(home);
}

方法二:

个人更推荐使用这个方法,activity上提供的原始api。使用的时候一样需要注释 super.onBackPressed();

/**
* 重新返回键功能,将返回键功能替换成home功能
*/
@Override
public void onBackPressed() {
// super.onBackPressed();
moveTaskToBack(true);
}

参数说明:
参数为false——代表只有当前activity是task根,指应用启动的第一个activity时,才有效;
参数为true——则忽略这个限制,任何activity都可以有效。
说明:判断Activity是否是task根,Activity本身给出了相关方法:isTaskRoot()