ios - 如何限制叠加到 UIImagePickerController 相机预览

标签 ios swift uiimagepickercontroller cameraoverlayview

我正在使用 UIImagePickerController() 在我的 swift iOS 应用程序中显示相机并让用户拍照。我想显示一个网格作为叠加层,所以我开始将一个网格实现为 .cameraOverlayView

问题是叠加图像或 View 会散布在相机 View 顶部和底部的黑条上。这是不可取的,因为网格线会越过相机按钮、取消按钮等。

我找不到一种方法来访问相机预览窗口的框架,以将叠加层限制在该范围内。我错过了什么?

最佳答案

实际上,这可能有点烦人,无法获取那些条形图或相机预览区域的大小,并且您无法实现 UIImagePickerController 的 subview ,因此您可以' 为此添加约束。 但是,您可以使用预览相机区域纵横比始终为 4/3 的事实,覆盖宽度应为屏幕宽度,高度应为 (widthScreen/3) * 4

另一种方法是设置 imagePicker.showsCameraControls = false 并构建带有全屏覆盖的自定义控件。
(使用imagePicker.cameraViewTransform来设置相机预览区域框全屏)。

关于ios - 如何限制叠加到 UIImagePickerController 相机预览,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36798816/

相关文章:

ios - 为什么使用 UIGraphicsPushContext/UIGraphicsPopContext

macos - Swift:如何单击按钮打开一个新窗口?

ios - 用相机拍照旋转asset.fullScreenImage 90度?

iphone - 收到内存警告后未调用 didFinishPickingMediaWithInfo

ios - 处理并发和异步响应

ios - 如何使用 Swift 从 iOS HealthKit 应用读取心率?

ios - 使用NSMutableAttributedString粗体显示字符串

swift - AVCaptureVideoDataOutput 中的无效键 -> ProfileLevel (macOS)

swift - 尝试转换旧的 Swift 代码 - Cstring 问题

iphone - 在iPhone中创建图像的缩略图?