2011-04-06 108 views
6

您好我一直在试图覆盖一个GLSurfaceview到现有的视图。下面的代码显示了我如何覆盖。唯一不起作用的是glsurfaceview的透明度。覆盖Android上现有视图的透明GLSurfaceview?

view = new GLSurfaceView(this); 

    view.setEGLConfigChooser(8, 8, 8, 8, 16, 0); 
    view.getHolder().setFormat(PixelFormat.TRANSLUCENT); 

    view.setRenderer(new Level1Renderer(this)); 

    setContentView(R.layout.test); 


    addContentView(view, new LayoutParams(100,400)); 

我已经接盘在我的渲染器的背景颜色为

 gl.glClearColor(0.0f, 0.0f, 0.0f, 0); 

谁能告诉我,什么我要离开了呢?

回答

3

的代码是正确的,你可能要添加

glView.setZOrderOnTop(true); 
glView.setRenderMode(GLSurfaceView.RENDERMODE_WHEN_DIRTY); 

(如果你的看法被其他视图中隐藏,你需要在上面。)

1

我有一个问题,这个太。我试图通过补间glSurfaceView(以及其他)的视图的alpha值来“淡出”我的整个屏幕。其他视图全部消失,但不是glSurfaceView。

我发现setZOrderMediaOverlay(true) ...而不是setZOrderOnTop(true)在glSurfaceView为我工作。