Android 恢复/暂停后曲面视图z索引的更改

Android 恢复/暂停后曲面视图z索引的更改,android,video,view,z-index,Android,Video,View,Z Index,我对Android视图上的z-index有疑问。我有一个GLSURFACHEVIEW活动,另一个SURFACHEVIEW用于视频播放。我在互联网上读到,多个表面视图不能放在同一个布局上,但这些帖子有点老了,我不知道这是否仍然是真的 无论如何,我对视图的顺序有问题。我希望视频视图在GLSURFACHEVIEW后面。它在应用程序启动时工作,因为我在构建VideoView时调用了方法setZOrderOnTop(false) public class LBVideoView extends Surfa

我对Android视图上的z-index有疑问。我有一个GLSURFACHEVIEW活动,另一个SURFACHEVIEW用于视频播放。我在互联网上读到,多个表面视图不能放在同一个布局上,但这些帖子有点老了,我不知道这是否仍然是真的

无论如何,我对视图的顺序有问题。我希望视频视图在GLSURFACHEVIEW后面。它在应用程序启动时工作,因为我在构建VideoView时调用了方法setZOrderOnTop(false)

public class LBVideoView extends SurfaceView implements OnPreparedListener, OnCompletionListener, SurfaceHolder.Callback {

private Context m_context;

public LBVideoView(Context context) {
    super(context);
    m_context = context;

    init();
}

private void init()
{
    this.getHolder().addCallback(this);
    this.getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
    this.getHolder().setFormat(PixelFormat.TRANSLUCENT);
    setZOrderOnTop(false); //CODE TO SET VIDEO VIEW TO BACK
}
}
当应用程序转到后台并稍后恢复时,就会出现问题。无论我在运行安卓4.1.2的设备上做什么,视频视图都是最重要的。在运行安卓4.4的Nexus5上,这种情况从未发生过。这在最新的Android版本上有变化吗?我需要保持与旧版本的兼容性

如果我删除所有视图并再次添加,它会工作,但这对我没有帮助,因为它会破坏视频的表面视图,我不希望发生这种情况

是否有人知道如何保持GLSurfaceView后面的曲面视图,即使在恢复之后?

首先,
#setZOrderOnTop(布尔值)
,并不直接控制曲面相对于彼此的z顺序(我不知道它是否有任何控制权。)它被记录为控制曲面相对于应用程序“窗口”的z顺序


glSurfaceView.setzordermediagoverlay(true)
可能就是您想要的。这将使glSurfaceView保持在LBVideoView的顶部。好了,这是控制两个曲面相对的z顺序的唯一方法。

谢谢,你完成了我的任务:)