Черный экран после загрузки SceneView с помощью Scenform во фрагмент - PullRequest
1 голос
/ 30 мая 2020

Я работаю над проектом, в котором будет вьювер 3D модели в одном фрагменте. Для этого я решил использовать сцену. Я столкнулся с проблемой со SceneView после попытки отобразить его во фрагменте вкладки.

Все сделано в соответствии с примерами и документацией по форме сцены, но sceneView отображает черный экран, независимо от цвета, который я назначаю .

Вот загрузчик сцены

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        vw = inflater.inflate(R.layout.fragment_open_gl, container, false);
        sceneView = vw.findViewById(R.id.scene_view);
        return vw;
    }

И фрагмент:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".OpenGL">

    <com.google.ar.sceneform.SceneView
        android:id="@+id/scene_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/Crimson"/>

</FrameLayout>

1 Ответ

1 голос
/ 30 мая 2020

Я решил проблему, добавив приостановку и возобновление просмотра сцены вместе с фрагментом:

    @Override
    public void onPause() {
        super.onPause();
        sceneView.pause();
    }

    @Override
    public void onResume() {
        super.onResume();
        try {
            sceneView.resume();
        } catch (CameraNotAvailableException e) {
            e.printStackTrace();
        }
    }
...