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