我正在使用 ArCore 进行项目。
我正在尝试在另一个 Fragment 中创建 ArFragment 对象的实例。它一直返回 null。
我有一个 Activity,MainActivity,我总共有 3 个在 ViewPager 中使用的 fragment 。
ArFragment 返回 null - 图片
当我尝试从第二个 Activity 创建 ArFragment 对象时,它起作用了。但是将 Arfragment 从第二个 Activity 传递到 Fragment 会导致糟糕的用户体验,所以我宁愿避免这种情况。
有什么方法可以在另一个 Fragment 中创建 ArFragment 吗?
最佳答案
我猜你应该在 onActivityCreated
中调用 getChildFragmentManager
。
这是我的代码,它运行正确。 (对不起,这是 Kotlin)
class MyFragment : Fragment() {
private lateinit var arFragment: ARFragment
override fun onCreateView(
inflater: LayoutInflater, @Nullable container: ViewGroup?, @Nullable savedInstanceState: Bundle?
): View? {
// fragment_sample contains ARFragment
return inflater.inflate(R.layout.fragment_sample, container, false)
}
override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
arFragment = childFragmentManager.findFragmentById(R.id.ar_fragment) as MyARFragment
...
}
...
关于java - 在另一个 Fragment 中创建 ArFragment 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52517094/