gpt4 book ai didi

Android 无事务添加 fragment

转载 作者:搜寻专家 更新时间:2023-11-01 09:12:05 25 4
gpt4 key购买 nike

我试图在我的 Activity 中用另一个 fragment 动态替换一个 fragment 。

看起来您不能用动态创建的 fragment 替换布局文件中静态定义的 fragment : Android: can't replace one fragment with another

建议的解决方案是在 onCreate 方法中动态添加原始 Fragment:

public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.my_layout);

FragmentTransaction ft = getFragmentManager().beginTransaction();
ShelfFragment shelves = new ShelfFragment();
ft.add(R.id.left_fragment, shelves);
ft.addToBackStack(null);
ft.commit();
}

这行得通,但是当用户按下后退按钮时,原来的 Fragment 被移除而不是关闭 Activity,因为 FragmentTransaction 将它添加到 FragmentManager 堆栈。

有没有办法在没有事务/堆栈条目的情况下将初始 fragment 添加到我的 Activity 中?

最佳答案

不要将其添加到后台。删除 ft.addToBackStack(null); 行,只有当您希望能够使用后退按钮返回到之前的状态时才需要此行。

关于Android 无事务添加 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7643263/

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