返回上次活动时出现黑屏

时间:2017-03-16 08:30:24

标签: android rendering opengl-es-2.0

我有一个应用程序可以渲染(带GLES2)地形,一切都按预期工作 当我按下主页按钮然后切换回我的活动时 - 屏幕是黑色的,并且永远不会像以前那样回归自己 为什么会这样? 我应该在进入主屏幕之前保存任何数据吗?  我错过了什么?

public void onSurfaceCreated(GL10 gl, javax.microedition.khronos.egl.EGLConfig config) {

    try {

        if (m_pViewport == null)
        {
            CreateMapDevice();
            CreateGridCoordinates();
            CreateNativeRasterLayer();
            CreateRawVectorLayer();
            CreateMapTerrain();
            CreateOverlayManager();
            CreateOverlay();
            m_eDisplayType = EDisplayType.EDT_2D;
            CreateViewport();
            CreatePicObject();
            CreateWorldPicObject();
            CreateTelemetryText();

        }
        else
        {
            m_pViewport.RemoveTerrain(m_pTerrain);
            CreateNativeRasterLayer();
            CreateMapTerrain();
            m_pViewport.AddTerrain(m_pTerrain);
        }

           IMcGLDeviceCamera.Create(m_Context);


    } catch (Exception e) {
        e.printStackTrace();
    }

}

1 个答案:

答案 0 :(得分:1)

默认情况下,当您的应用进入后台时,您的OpenGLES上下文会被销毁。

我认为您可能需要使用setPreserveEGLContextOnPause