Определить, когда камера теряет фокус (Swift)
Я создаю полноэкранное приложение для камеры и позволяю пользователю задавать интересующие объекты, нажимая на экран. Однако, когда пользователь перемещает свою камеру, и вид теряет фокус, как я могу сказать? Я хочу переключить устройство focusMode
в AVCaptureDevice.FocusMode.continuousAutoFocus
Вот как выглядит мой код прямо сейчас.
@objc func handleTap(tap: UITapGestureRecognizer) {
let location = tap.location(in: view)
var focusPoint = CGPoint()
focusPoint.x = location.x / view.frame.width
focusPoint.y = location.y / view.frame.height
if let device = currentVideoDevice {
if try! (currentVideoDevice?.lockForConfiguration()) != nil {
if device.isFocusPointOfInterestSupported {
device.focusPointOfInterest = focusPoint
device.focusMode = AVCaptureDevice.FocusMode.autoFocus
}
if device.isExposurePointOfInterestSupported {
device.exposurePointOfInterest = focusPoint
device.exposureMode = AVCaptureDevice.ExposureMode.autoExpose
}
device.unlockForConfiguration()
}
}
}