请问有人能帮助我吗? 我有一个碎片Fragment A,我动态地将它添加到布局中...假设我已经向该布局添加了3个Fragment A实例,那么我如何以编程方式删除这3个碎片实例呢?我尝试过谷歌搜索和其他StackOverflow线程,但它们都没有起作用...
请帮帮我。
谢谢。
请问有人能帮助我吗? 我有一个碎片Fragment A,我动态地将它添加到布局中...假设我已经向该布局添加了3个Fragment A实例,那么我如何以编程方式删除这3个碎片实例呢?我尝试过谷歌搜索和其他StackOverflow线程,但它们都没有起作用...
请帮帮我。
谢谢。
其实很简单:
假设你是这样添加片段的:
fragmentTransac.add(R.id.content, fragA);
相反,您也需要使用标签来添加它
fragmentTransac.add(R.id.content, new FragA(), "first");
// then the other
fragmentTransac.add(R.id.content, new FragA(), "second");
然后移除:
Fragment f = getFragmentManager().findFragmentByTag("first");
if(f!=null) fragmentTransac.remove(f);
fragmentTransac.commit();
愉快的编码 =]
fragmentTransac
对象是通常从getFragmentManager().beginTransaction()
获取的FragmentTransaction吗?另外,如果你正在使用兼容包而不是getFragmentManager()
,你应该调用getSupportFragmentManager()
吗?我没有包含这些细节,因为它们非常基础。 - Budius