(首先,我知道这个问题已被多次询问,但我没有找到适用的答案)
我有一个片段创建如下:
inflater.inflate ( R.layout.fragment_task_ongoing, container, false );
我想要的是在FragmentActivity中使用findFragmentById,如下所示:
TaskActiveFragment f = ( TaskActiveFragment ) getSupportFragmentManager ().findFragmentById ( R.id.fragment_task_ongoing );
不幸的是,这返回null.明显的原因是用作参数的id是RelativeLayout被膨胀的id,而不是Fragment.布局的第一行:
那么,我如何找出片段的 ID ?如果它没有ID,我该如何给它?编程方式?XML?
编辑:我的片段被添加到FragmentStatePagerAdapter,然后将其添加到ViewPager.
如果您保留对FragmentStatePagerAdapter和视图中Fragment索引的引用,则可以在FragmentStatePagerAdapter上调用getItem(int position),它将返回Fragment.