UIImagePickerController,获取Take Photo Button事件?

时间:2015-12-09 11:25:12

标签: ios uiimagepickercontroller

我想在UIImagePickerController上添加一个customView, 那么如何才能获得Take Photo Button的事件来隐藏customView? 和Retake事件显示customView?提前感谢!

2 个答案:

答案 0 :(得分:0)

如果您想要将自定义视图显示为叠加层,请使用UIImagePickerController属性cameraOverlayView并将自定义视图指定给此属性。

picker.cameraOverlayView = overlay;

答案 1 :(得分:0)

我遇到了同样的问题,我通过在创建 UIImagePickerController 时添加两个观察者来解决它。

在拍照时移除覆盖层:

NotificationCenter.default.addObserver(forName: NSNotification.Name("_UIImagePickerControllerUserDidCaptureItem"), object: nil, queue: nil) { _ in
    picker.cameraOverlayView = nil
}

以及用户点击“Retake”的情况:

NotificationCenter.default.addObserver(forName: NSNotification.Name("_UIImagePickerControllerUserDidRejectItem"), object: nil, queue: nil) { _ in
    picker.cameraOverlayView = yourOverlayView
}