在我的活动中获取片段实例

时间:2013-11-15 12:19:03

标签: android fragment

我是否已经创建了某种方式,当前在我的活动中显示了相同的片段实例。我使用

  • findFragmentById(int id),我根本就没有创建
  • findFragmentByTag(String tag),因为由于某些要求,我没有在每个片段.offcourse中添加标记。
  • getFragment(Bundle bundle, String key),因为我从来没有捆绑过。

虽然我可能看起来像傻子,但我想要这样的东西。活动是否在某处保留了一些片段实例。??

我可以采取哪种最佳方法来达到这一要求。

更新

好的,让我告诉你为什么我不能使用上述方法。如果我在一个活动中添加各种片段,我总是希望在单击后退时返回到一个片段。 (正如我们在导航抽屉中所知,你知道)。除非有内在片段。所以为此,我不想在后台添加。

现在即使我有与我的片段相关联的标签,我也不能说8个片段if- else-if-else获取标签。我知道这是不正确的。所以前两种方式就是我的选择。现在是第三个。我完全不知道在哪里保留它。即使我把它放在哪里,每当我想要我的碎片时,我都会得到捆绑和密钥。

1 个答案:

答案 0 :(得分:1)

您可以从片段管理器

获取
List<Fragment>  fragList=fManager.getFragments();
    for(Fragment fr: fragList){
        String fragClassName = fr.getClass().getName();
        if(fragClassName.equals(Abc.class.getName())){
            Log.i("Fragment:","Abc");
        }else if (fragClassName.equals(Xyz.class.getName())) {
            Log.i("Fragment:","Xyz");
        }
    }