我正在努力解决一个问题。我正在捕捉视频,并且我将一个带有 UIImage 的 UIImageView 作为 UIImagePicker CameraOverLay 放入其中。因此,当用户启动相机以捕捉视频时,他可以看到相机上的叠加层。当用户停止捕获并被移动到 UIImagePicker 的“取消或重拍”屏幕时,cameraOverlayView 仍然可见。
关于如何不在“重拍或取消”屏幕中显示叠加层的任何想法?
我正在努力解决一个问题。我正在捕捉视频,并且我将一个带有 UIImage 的 UIImageView 作为 UIImagePicker CameraOverLay 放入其中。因此,当用户启动相机以捕捉视频时,他可以看到相机上的叠加层。当用户停止捕获并被移动到 UIImagePicker 的“取消或重拍”屏幕时,cameraOverlayView 仍然可见。
关于如何不在“重拍或取消”屏幕中显示叠加层的任何想法?
通过注册 NSNotificationCenter,并听 @"_UIImagePickerControllerUserDidCaptureItem" 和 @"_UIImagePickerControllerUserDidRejectItem" 解决。
对于 Swift 4,它是:
NotificationCenter.default.addObserver(forName: NSNotification.Name(rawValue: "_UIImagePickerControllerUserDidCaptureItem"), object:nil, queue:nil, using: { note in
print("camera did capture")
})
NotificationCenter.default.addObserver(forName: NSNotification.Name(rawValue: "_UIImagePickerControllerUserDidRejectItem"), object:nil, queue:nil, using: { note in
print("user pressed Retake")
})