我怎样才能杀死我的应用程序的所有活动?
我尝试使用this.finish()
,但它只会杀死一个活动。
事实上,我想当用户触摸后退按钮时(仅在其中一个活动中),应用程序做的就像他按下 Home 按钮一样。
我怎样才能杀死我的应用程序的所有活动?
我尝试使用this.finish()
,但它只会杀死一个活动。
事实上,我想当用户触摸后退按钮时(仅在其中一个活动中),应用程序做的就像他按下 Home 按钮一样。
您可以android:noHistory="true"
在 AndroidManifest.xml 中为您的所有活动进行设置。因此,他们不会将自己置于历史堆栈中,并且后退按钮会将您带到主屏幕。
这个之前已经讨论过很多次了。本质上没有简单的方法,也不应该有。用户按 Home 退出您的应用程序(正如您所指出的)。
覆盖该onBackPressed
方法,并执行当他们按下主页按钮时发生的事情。它并没有真正关闭所有活动,但您要问的是某个活动中的后按模拟主页按钮。
@Override
public void onBackPressed() {
Intent i = new Intent(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_HOME);
startActivity(i);
}
当您按回时,将其放入活动将回家。请注意,该onBackPressed
方法的原始实现包括对 super 的调用,它是故意删除的。我知道这个问题已经很老了,但他明确地问了别的问题
要终止所有活动,请在 onBackPressed 上使用这些代码。
@Override
public void onBackPressed() {
if (getFragmentManager().getBackStackEntryCount()>0) {
getFragmentManager().popBackStackImmediate();
} else {
finishAffinity();
System.exit(0);
}
}