Я создаю макет типа FrameLayout, в котором я добавляю два вида. Два представления - объекты GLSurfaceView и SurfaceView соответственно. Согласно документации разработчиков Android относительно SurfaceView,SurfaceView скрывает другие компоненты на экране
«Поверхность Z заказана так, что она находится за окном, удерживающим SurfaceView, SurfaceView пробивает отверстие в своем окне, чтобы его поверхность отображалась».
Это хорошо работает для меня, и SurfaceView всегда остается за моим GLSurfaceView (используется для рисунков opneGL). Но после того, как возобновление внешнего события поведение нечетно для следующей конфигурации
Android Версия: 4,3 устройства Номер модели: Nexus 7 Версия ядра 3.4.0.g1f57c39 13 июня постройки Номер: JWR66N
Для эта конфигурация, возобновляющаяся после внешнего события, помещает мой GLSurfaceView за SurfaceView. Другими словами, SurfaceView размещается сверху в ZOrder, и мои рисунки OpenGL больше не видны. В версиях, превышающих Android 4.3, такого поведения не наблюдается.
Я могу воспроизвести это поведение во всех версиях, вызвав метод SurfaceView следующим образом: true в качестве параметра.
аннулируются setZOrderOnTop
Это известная проблема. Кто-нибудь может помочь мне в этом?
С уважением, Sumedh
Держу пари, что его устройство зависит ... отверстие вещь не очень надежна и подвержена артефактам на свитках, ретрансляциях, резюме ... – rupps
Какая альтернатива. Я хочу поместить некоторые элементы управления видео, какие макеты, виды можно использовать. Можете ли вы указать мне на что-то ....... –
umm вы двигаетесь близко к краю! взгляните на http://stackoverflow.com/questions/5647824/android-multiple-surfaceviews, они, похоже, обсуждают укладку поверхностных изображений – rupps