android - 将透明 GLSurfaceview 覆盖到 android 中的现有 View 上?

标签 android transparency overlay glsurfaceview

您好,我一直在尝试将 GLSurfaceview 叠加到现有 View 上。下面的代码显示了我是如何叠加的。唯一不起作用的是顶部 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);

有人可以告诉我我遗漏了什么吗?

最佳答案

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

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

(如果您的 View 被其他 View 隐藏并且您需要它在顶部。)

关于android - 将透明 GLSurfaceview 覆盖到 android 中的现有 View 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5565216/

相关文章:

java - Android中的画笔动画效果

delphi - 如何在 TVirtualDrawTree 中创建具有透明背景的节点?

dart - OverlayEntry.remove() 不会从 overlayState 中删除条目

java - Android onPause() 在 onStop() 之后调用

android - 无法将库添加到我的 android 项目

android - 如何在 android 中模拟 MotionEvent 和 SensorEvent 进行单元测试?

Java GlassPanel 清晰透明背景

php - 如何选择一种颜色使图像透明?

flutter - 如何在 Flutter 中使用 pushNamed 导航后使 OverlayEntry 消失

html - CSS 文本叠加在完整图像上