具有可绘制背景的Android GLSurfaceView

Jla*_*lam 5 android background opengl-es drawable glsurfaceview

我有一个带有drawable作为背景的GLSurfaceView,但是在没有surfaceView.setZOrderOnTop(true)的情况下渲染时只有背景可见

我需要避免使用setZOrderOnTop(true),因为在GLSurfaceView上使用静态TextView.

有什么建议让这个工作?

Rom*_*Guy 9

GLSurfaceView无法真正拥有背景.表面视图的工作方式是在Activity的窗口中切出一个洞,并在后面显示另一个表面.设置setZOrderOnTop(true)将表面移动到Activity的窗口上方.


小智 7

假!你能行的.只是一个展示它是如何工作的例子.

glRenderer  = new OpenGLRenderer(context);
view = new GLSurfaceView(context);
view.setEGLConfigChooser(8, 8, 8, 8, 16, 0);
view.setRenderer(glRenderer);
view.getHolder().setFormat(PixelFormat.RGBA_8888);
view.getHolder().setFormat(PixelFormat.TRANSLUCENT);
view.setRenderMode(GLSurfaceView.RENDERMODE_CONTINUOUSLY);
Run Code Online (Sandbox Code Playgroud)

然后使用framelayout在glsurfaceview下放置一个视图!