SurfaceView
SurfaceView 调用 setZOrderOnTop(true) 遮挡其他控件
[TOC]
setZOrderOnTop
setZOrderOnTop,控制这个 surfaceView 是否被放在窗口顶层。通常,为了使它与绘图树整合,它被放在窗口之后。通过这个函数,你可以使 SurfaceView 被放在窗口顶层。这意味着它所在的窗口的其他内容都不可见。(注: 可以设置 surfaceView 透明来使其他内容可见)
这个函数必须在窗口被添加到窗口管理器之前设置。
要实现 SurfaceView 透明,需要设置 setZOrderOnTop(true),就是说必须把 SurfaceView 置于 Activity 显示窗口的最顶层才能正常显示,然后调用了 SurfaceView.setZOrderOnTop(true) 又导致了自定义的其他控件比如播放、快进等按钮被遮挡。
setZOrderMediaOverlay
疑问
- 如果设置 setZOrderOnTop,可以透明,但会把其他挡住
- 设置 setZOrderMediaOverlay,背景黑屏