我目前正在开发一款Android应用程序,它需要在一个屏幕上显示多个重叠的SurfaceView。
准确地说,我有两个活动的重叠SurfaceView,一个连接到Camera,另一个连接到MediaPlayer。它主要起作用但不稳定。有时,其中一个SurfaceViews不会显示。
我看到2009年的一个帖子(http://groups.google.com/group/android-developers/browse_thread/thread/08e7df2e96a7973d)说Android中不支持重叠的SurfaceViews。这仍然是这样吗?任何人都可以分享这方面的经验吗?
答案 0 :(得分:12)
我自己发现了。我想在SurfaceView上调用setZOrderOnTop(true)似乎解决问题
答案 1 :(得分:0)
我曾经写过一次应用程序,重叠的线性布局。当我与view.layout(l,t,r,b)
重叠时,它工作正常。我不确定它是否也适用于SurfaceViews。你怎么重叠他们?
答案 2 :(得分:0)
surface.setZOrderOnTop(true);
surface.setZOrderMediaOverlay(true);
如果设置了两个Surfaceview,则会出现遮挡问题,如果您希望其中一个位于顶部,则只设置Setzorderontop(true),但这样做会始终位于顶部,并且任何其他视图都将被阻止,如果你设置Setzorderontop并设置Setzordermediaoverlay,那么Setzorderontop将会失败