如何清除GLSurfaceView

时间:2014-07-21 07:51:03

标签: android opengl-es-2.0 glsurfaceview

我正在使用带有视频流的GLSurfaceView。一切顺利。但是当流结束时,GLSurfaceView中仍有剩余图片。如何从GLSurfaceView中删除图片?

顺便说一下,当我跳到另一个活动并回来时,剩下的画面就消失了。

------------------更新-----------------------

我用这个解决了我的问题:     GLSurfaceView.setVisiblility(View.Invisible);     GLSurfaceView.setVisiblility(View.Visible); 所以GLSurfaceView可以重绘它的左边;

期待更好的答案。

2 个答案:

答案 0 :(得分:0)

尝试在视频流结束后调用requestRender()。

答案 1 :(得分:0)

试试这个神奇的代码:

    view.setRenderer(new Renderer() {

        @Override
        public void onSurfaceCreated(GL10 gl, EGLConfig config) {
        }

        @Override
        public void onSurfaceChanged(GL10 gl, int width, int height) {
        }

        @Override
        public void onDrawFrame(GL10 gl) {
            // here are Red, Green, Blue and Alpha values between 0 and 1
            GLES20.glClearColor(0, 0, 0, 1); 
            GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT);                
        }
    });