2013-09-15 5 views
1

У меня есть UIImagePickerController и cameraOverlayView, однако, когда пользователь делает снимок, просмотр CameraOverlay сохраняется в окне «Просмотр/использование фото/перехвата фотографии».Удалить камеру UIImagePickerControllerOverlayView в предварительном просмотре

Есть ли способ определить камеруOverlayView только для первого просмотра камеры?

ответ

0

Предварительный просмотр осуществляется с помощью UIImagePickerController, а наложение всегда отображается до тех пор, пока контроллер не будет уволен.

Я не знаю, как изменить это поведение.

2

Просто отправьте сюда для будущих ссылок, если это кому-то понадобится.

У меня была одна и та же проблема, и после дня исследования, с большим количеством ошибок и ошибок, я нашел способ, который удаляет CameraOverlayView из предварительного просмотра изображения.

Когда вы снимаете триггеры «_UIImagePickerControllerUserDidCaptureItem». К счастью, мы можем использовать это, создав наблюдателя с закрытием. Внутри крышки мы можем установить для камерыOverlayView значение 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 
}) 
Смежные вопросы