我目前有一个Android应用程序流动A - > B - > C - > D在活动1中启动。
在D之后,我启动了活动2并运行以下代码以从堆栈中删除所有片段。
List<Fragment> fragments = getSupportFragmentManager().getFragments();
if (fragments != null) {
for (Fragment fragment : fragments) {
getSupportFragmentManager().beginTransaction().remove(fragment).commit();
}
}
我的问题是当我从活动2返回到活动1时,是当我按下后退键时片段C动画回到屏幕。片段D确实删除但A B C没有删除。我希望应用程序在活动1的背压下关闭。
我附上了删除我的片段的代码。调试显示fragment
确实随每个循环而变化。
有人可以告知这里发生了什么吗?
答案 0 :(得分:0)
您可以覆盖后退方法并关闭应用,如下所示:
@Override
public void onBackPressed() {
finish(); // finish activity
}