我有一个UIImagePickerController和一个cameraOverlayView,但是当用户拍照时,cameraOverlay视图仍然存在于“预览/使用照片/重拍照片”视图中。
有没有一种方法可以只定义第一个相机视图的cameraOverlayView?
发布于 2016-12-07 21:14:26
如果有人需要的话,我只是在这里发帖,以供将来参考。
我一直有同样的问题,经过一天的研究,经过大量的尝试和错误,我找到了一种从图像预览中删除cameraOverlayView的方法。
当你拍照的时候,"_UIImagePickerControllerUserDidCaptureItem“就会被触发。幸运的是,我们可以通过创建一个带有闭包的观察者来利用这一点。在闭包内部,我们可以将cameraOverlayView设置为nil,从而在进入预览之前删除您的自定义视图。
这适用于Xcode版本8.1 (8B62)和Swift 3。
我已经添加了代码片段,以供您在需要时使用。
NotificationCenter.default.addObserver(forName: NSNotification.Name(rawValue: "_UIImagePickerControllerUserDidCaptureItem"), object:nil, queue:nil, using: { note in
self.imagePicker.cameraOverlayView = nil
})发布于 2013-09-16 05:10:21
预览由UIImagePickerController为您处理,并且覆盖始终可见,直到控制器关闭。
我不知道有什么方法可以改变这种行为。
https://stackoverflow.com/questions/18817438
复制相似问题