gpt4 book ai didi

android - 删除在我的情况下未放入堆栈的 fragment

转载 作者:太空狗 更新时间:2023-10-29 12:53:15 24 4
gpt4 key购买 nike

假设我有两个 fragment :firstFragmentsecondFragment

我知道我可以通过以下方式替换 fragment :

fragmentTransaction.replace(R.id.fragment_placeholder, firstFragment);
fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
fragmentTransaction.commit();

如上面的代码所示,我没有将上面的firstFragment添加到back stack

然后,我用 secondFragment 替换,但是这次,我将 secondFragment 添加到 back stack:

fragmentTransaction.replace(R.id.fragment_placeholder, secondFragment);
fragmentTransaction.addToBackStack(null); //add to back stack
fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
fragmentTransaction.commit();

在我的手机屏幕上,它现在显示 secondFragment

我的问题是,如何删除添加到返回堆栈firstFragment

最佳答案

分离 fragment 后, fragment 将被销毁。为确保您的 fragment 是否仍在布局中,您可以使用“层次结构查看器”透视图。要使用层次结构查看器,您必须使用模拟器或 Root设备。 (http://developer.android.com/guide/topics/fundamentals/fragments.html#Creating)

但是,如果您使用 android-support-v4.jar 来支持 1.6 及更高版本,请确保您没有在 xml 布局中定义任何 fragment 。使用 android-support-v4.jar 时无法删除 xml-layout 中的 fragment 。如果您使用将一直显示的 fragment (例如导航),那就去做吧

编辑:替换也应该删除第一个 fragment 。替换将用给定的 fragment 替换容器内的所有子项。

关于android - 删除在我的情况下未放入堆栈的 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9700288/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com