我正在尝试添加和删除相对布局中的片段。如果在相对布局(片段容器)中为空,则添加片段(如果不替换片段)。
如何检查布局是否为空,这样我就不会收到已经添加片段的错误。
答案 0 :(得分:2)
试试这段代码
YourFragment dFrag = (YourFragment) getSupportFragmentManager()
.findFragmentById(R.id.detailfragment);
if (dFrag != null && dFrag.isInLayout()) {
// do something
} else {
// do something
}
答案 1 :(得分:1)
不确定这是不是答案,但我建议你像这样使用FragmentTransaction:
FragmentManager fm = getFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
if(yourOldFragment.isAdded()) {
ft.replace(R.id.your_container, yourNewFragment);
ft.commit();
}
您还可以查看以下链接:Fragment duplication on Fragment Transaction