0

我正在尝试在相对布局中添加和删除片段。如果在相对布局(片段容器)中为空,则添加片段,如果不替换片段。

如何检查布局是否为空,这样我就不会收到错误提示片段已添加。

4

2 回答 2

2

试试这个代码

YourFragment dFrag = (YourFragment) getSupportFragmentManager()
            .findFragmentById(R.id.detailfragment);

if (dFrag != null && dFrag.isInLayout()) {
    // do something
} else {
    // do something
}
于 2013-05-06T06:32:09.380 回答
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

于 2013-05-06T06:33:37.760 回答