2016-09-13 2 views
1

У меня есть два вида поверхности в приложении, и один вид поверхности должен перекрывать другой вид поверхности. Например, скажем, что есть два вида поверхности SurfaceView A и SurfaceView B. B должен быть сверху A, который выполняется установкой setZOrderOnTop (true) на B.Кнопка поверх SurfaceView с setZOrderOnTop установлена ​​в true в Android

Теперь я хочу отобразить текст или кнопки сверху из B, но поскольку он имеет порядок Z, установленный как истинный, текст или добавленные кнопки не отображаются сверху, а попадают под него. Если свойство setZOrderOnTop не установлено, текстовые представления и кнопки отображаются вверху, но затем B не перекрывается A.

Я попытался разместить SurfaceView B и текстовое изображение или кнопки в FrameLayout, но все же он отображается под B Есть ли способ, которым z-порядок может быть установлен в true, и текст по-прежнему может появляться поверх него?

ответ

3

Я смог решить проблему, используя setZOrderMediaOverlay(true) вместо setZOrderOnTop.

Метод setZOrderOnTop, если установлено значение true, всегда будет находиться над окном. Таким образом, для того, чтобы иметь вид сверху на вид поверхности setZOrderMediaOverlay, следует использовать.

Дополнительную информацию см. setZOrderMediaOverlay document here.