gpt4 book ai didi

android - FragmentTransaction.replace 仅替换容器中的第一个 Fragment

转载 作者:太空宇宙 更新时间:2023-11-03 10:47:51 25 4
gpt4 key购买 nike

我在一个事务中添加了一个容器中的两个 fragment (比如 A 和 B)。我尝试用 C 替换它们。根据文档,replace 应该从指定容器中删除所有 fragment ,然后添加新 fragment 。相反,它仅替换第一个。所以我最终得到了 B 和 C fragment 。这让我很困惑。是错误还是什么?

我已经知道将多个 fragment 添加到单个容器被认为是不好的做法。但我还是很好奇。

更新:之前发现:http://code.google.com/p/android/issues/detail?id=28452

最佳答案

我猜你是这样的:

Fragment fragmentA = (getFragmentManager().findFragmentById(R.id.fragmentC));
Fragment fragmentB = (getFragmentManager().findFragmentById(R.id.fragmentB));
FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();

ft.remove(fragmentA);
ft.remove(fragmentB);
ft.commit();

然后只需添加新的 fragment 。

getSupportFragmentManager().beginTransaction().add(R.id.container, fragmentC).commit();

关于android - FragmentTransaction.replace 仅替换容器中的第一个 Fragment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19367960/

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