19

我正在努力解决一个问题。我正在捕捉视频,并且我将一个带有 UIImage 的 UIImageView 作为 UIImagePicker CameraOverLay 放入其中。因此,当用户启动相机以捕捉视频时,他可以看到相机上的叠加层。当用户停止捕获并被移动到 UIImagePicker 的“取消或重拍”屏幕时,cameraOverlayView 仍然可见。

关于如何不在“重拍或取消”屏幕中显示叠加层的任何想法?

4

2 回答 2

31

通过注册 NSNotificationCenter,并听 @"_UIImagePickerControllerUserDidCaptureItem" 和 @"_UIImagePickerControllerUserDidRejectItem" 解决。

于 2013-07-31T14:37:10.277 回答
6

对于 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")
    })
于 2018-10-11T18:41:31.233 回答