Android GLSurfaceView с рисованным фоном - PullRequest
5 голосов
/ 02 октября 2010

У меня есть GLSurfaceView с отрисовкой в ​​качестве фона, однако только фон виден при визуализации без surfaceView.setZOrderOnTop (true)

Мне нужно избегать использования setZOrderOnTop (true), потому что используются статические TextView, используемыеповерх GLSurfaceView.

Есть ли какие-нибудь предложения, как заставить это работать?

Ответы [ 4 ]

9 голосов
/ 02 октября 2010

GLSurfaceView не может иметь фон.Поверхностный вид работает, вырезая отверстие в окне вашей деятельности и показывая другую поверхность позади.Установка setZOrderOnTop (true) перемещает поверхность над окном Activity.

6 голосов
/ 19 февраля 2011

ложь!Ты можешь это сделать.Просто пример, чтобы показать, как это работает.

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);

Затем используйте framelayout, чтобы поместить представление в glsurfaceview!

2 голосов
/ 04 апреля 2012

Попробуйте setZOrderMediaOverlay (true); который должен поместить слой gl над фоном, но под окном.

1 голос
/ 02 октября 2010

Что ж, поскольку GLSurfaceView - это просто еще одно представление, почему бы не использовать FrameLayout, чтобы поместить GLSurfaceView поверх ImageView (или чего-либо, что вы используете для отображения рисованного объекта).

...