10

我目前正在开发一个需要在一个屏幕上重叠多个 SurfaceView 的 Android 应用程序。

准确地说,我有两个活动的重叠 SurfaceView,一个连接到 Camera,另一个连接到 MediaPlayer。它主要工作但不稳定。有时,其中一个 SurfaceView 不会出现。

我看到 2009 年的一个帖子(http://groups.google.com/group/android-developers/browse_thread/thread/08e7df2e96a7973d)说 Android 不支持重叠的 SurfaceView。现在还是这样吗?任何人都可以分享这方面的经验吗?

4

3 回答 3

16

我自己发现了。在我想放在上面的 SurfaceView 上调用 setZOrderOnTop(true) 似乎可以解决问题

于 2011-10-17T11:27:25.880 回答
2
surface.setZOrderOnTop(true);
surface.setZOrderMediaOverlay(true);

如果设置了两个Surfaceview,就会出现遮挡的问题,如果你想让其中一个在顶部,那么只设置Setzorderontop(true),但是这样做会一直在顶部,任何其他视图将被阻止,如果您设置 Setzorderontop 并设置 Setzordermediaoverlay,则 Setzorderontop 将失败

于 2017-08-09T07:22:16.777 回答
0

我曾经写过一个应用程序,有重叠的线性布局。当我将它们与view.layout(l,t,r,b). 我不确定这是否也适用于 SurfaceViews。你如何重叠它们?

于 2011-10-10T14:22:28.063 回答