我在这样的 for 循环中以编程方式将片段添加到我的活动中:
FragmentManager fm = getFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
for(int i = 0; i<bl.size(); i++)
{ft.add(R.id.linearlayout, new BackflowDeviceFragment(), Integer.toString(i));}//for
ft.commit();
fm.executePendingTransactions();
然后我尝试像这样获取对这些片段的引用:
BackflowDeviceFragment frag = (BackflowDeviceFragment) fm.findFragmentByTag(Integer.toString(i));
我成功获得了参考,但是每当我尝试对任何片段的 UI 元素进行操作时,都会发现它们为空。所以我做了一些调试,发现我创建的用于操作 UI 元素的公共方法在我设置所有 UI 内容的 onCreateView() 方法之前被调用。
何时调用 onCreateView()?如何成功使用这些 UI 元素?