0
我现在有流Android应用A - >乙 - “ç - > d在活动推出1.除去所有片段使得onBackPressed关闭应用
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
确实随每个循环而改变。
任何人都可以建议这里发生了什么?
什么是D-> C-> B-> A欲望的行为吗?你为什么要加入到后台? – nomag
是否有一个特定的原因,您将所有片段添加到后端堆栈以开始?另外,当用户从活动2返回到活动1时,您想要显示哪个片段? –
我添加到了堆栈中,因为在片段中,如果按下后退键,我希望能够导航回到它们。如果对服务器的调用成功,则行为是A> B> C> D>打开活动2。如果我从活动2返回活动1,我不希望任何片段出现在backkeypress上,而是希望它退出该应用程序。 – Airagale