方法一:
在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()