我正在与ArCore合作开展一个项目。
我正在尝试在另一个Fragment中创建一个ArFragment对象的实例。它一直返回null。
我有一个Activity,MainActivity,我在ViewPager中总共有3个片段。
ArFragment返回null - 图片
当我试图从第二个活动创建一个ArFragment对象时,它的工作原理。但是将Arfragment从第二个活动传递到Fragment会导致用户体验不佳,所以我宁愿避免这种情况。
有没有办法在另一个片段中创建ArFragment?
我隐约记得你需要使用不同的函数来查找片段内的片段。这对我来说没有问题:
arFragment = getChildFragmentManager()。findFragmentById(R.id.ar_fragment);
希望这可以帮助 :)
在Android中,Activity
本身可以包含几个Fragments
。当Activity
运行时,您可以独立操作每个Fragment
,例如添加或删除它们。
每个片段都可以被视为视图控制器。 Android允许您将子片段放入父片段中。
以下是如何在另一个内部创建一个ArFragment:
在Kotlin:
val arcoreFragment = MyARFragment()
childFragmentManager.beginTransaction().apply {
add(R.id.ar_fragment, arcoreFragment)
commit()
}
在Java中:
ArFragment arcoreFragment = new MyARFragment();
FragmentTransaction ta = getChildFragmentManager().beginTransaction();
ta.add(R.id.ar_fragment, arcoreFragment).commit();