如何从主要活动中替换片段
Posted
技术标签:
【中文标题】如何从主要活动中替换片段【英文标题】:How to replace a fragment from the main activity 【发布时间】:2021-10-13 22:31:14 【问题描述】:我有两个片段,mainactivity 最初有一个名为“仪表板片段”的片段单击此按钮后,我必须用名为“仪表板 1 片段”的新片段替换此片段,但问题是仪表板片段没有隐藏/删除,现在它显示两者
我的代码
public void onClick(View view)
Fragment fragment = null;
fragment = new Dash_Section();
replaceFragment(fragment);
public void replaceFragment(Fragment someFragment)
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.frame_container, someFragment);
transaction.addToBackStack(null);
transaction.commit();
如何删除或替换仪表板片段? 任何帮助将不胜感激。
【问题讨论】:
【参考方案1】:首先,您必须在 MainActivity 的 Layout 文件中声明一个 FragmentContainer。这是显示两个片段的空间。然后你可以实例化这两个 Fragment 并通过添加在它们之间进行更改:
Dashboard1Fragment dFragment = new Dashboard1Fragment();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, dFragment);
fragmentTransaction.commit();
这将替换您的 FragmentContainer 的内容并实例化一个新的 Fragment,而不会重叠两个 Fragment。
【讨论】:
以上是关于如何从主要活动中替换片段的主要内容,如果未能解决你的问题,请参考以下文章