3

UIImagePickerController()用来在我的 swift iOS 应用程序中显示相机并让用户拍照。我想将网格显示为叠加层,因此我开始将其实现为.cameraOverlayView

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

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

4

1 回答 1

1

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

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

于 2017-05-04T16:35:02.193 回答