4

我想在相机表面视图上创建一个蒙版。见下图。面具可调整大小。图像只会被未模糊区域点击。任何人都可以给出如何创建 suh 面具的想法吗?提前致谢。

例子

4

2 回答 2

0

您无法在接收相机预览的 SurfaceView 的 Surface 上绘图。

您有两个基本选择:在 SurfaceView 的 View 部分上绘制,将其视为自定义视图,或者创建第二个 SurfaceView 并将其放在相机表面的顶部。

对于后者,您可以使用setZOrderMediaOverlay()将 Surface 放置在相机 Surface 层之上但在 View UI 层之下。您可以使用 Canvas 或 GLES 在其上绘图。您可以在Grafika 的“多表面测试”中找到具有三个 SurfaceView 的活动示例。

于 2015-06-25T15:52:20.390 回答
0

您可以使用相机预览在表面视图上绘图。您需要设置

setWillNotDraw(false);

在surfaceCreated 覆盖。

请参阅:从未调用过扩展 SurfaceView 的 onDraw() 方法

因此,从那里开始,像往常一样在 onDraw 中进行所有绘图。

于 2020-04-17T14:09:16.100 回答