【问题标题】:Create cameraview (mask) on surfaceview in android在android中的surfaceview上创建cameraview(掩码)
【发布时间】:2015-09-12 00:32:09
【问题描述】:

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

【问题讨论】:

    标签: android camera surfaceview mask camera-view


    【解决方案1】:

    您不能在接收相机预览的 SurfaceView 的 Surface 上绘图。

    您有两个基本选择:在 SurfaceView 的 View 部分上绘制,将其视为 custom view,或者创建第二个 SurfaceView 并将其叠加在相机表面之上。

    对于后者,您可以使用setZOrderMediaOverlay() 将 Surface 定位在相机 Surface 层之上但在 View UI 层之下。您可以使用 Canvas 或 GLES 在其上绘图。您可以在Grafika's“multi-surface test”中找到具有三个 SurfaceView 的 Activity 示例。

    【讨论】:

      【解决方案2】:

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

      setWillNotDraw(false);
      

      在surfaceCreated 覆盖中。

      见:Extended SurfaceView's onDraw() method never called

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-11-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-30
        • 2023-04-08
        相关资源
        最近更新 更多