如何使用iOS,swift将FRONT相机聚焦在设备上?

时间:2015-08-11 08:34:42

标签: ios swift camera

前置摄像头似乎不支持focusMode。

func configureDevice() {
    if let device = captureDevice {
        let focusMode: AVCaptureFocusMode = .AutoFocus
        if device.isFocusModeSupported(focusMode) {
            device.lockForConfiguration(nil)
            device.focusMode = AVCaptureFocusMode.AutoFocus
            device.unlockForConfiguration()
            println("configured device")
        }
    }
}

此代码无法运行,因为

if device.isFocusModeSupported(focusMode) 

返回false。

但在内置摄像头应用中,前置摄像头可以专注于点击。

有没有办法在FRONT相机上实现点按对焦?

1 个答案:

答案 0 :(得分:7)

前置摄像头不支持点按任意iPhone。您可以使用device.focusPointOfInterestSupported属性来检查您是否可以进行点按对焦(但与isFocusModeSupported()一样,您会得到错误的信息)

您看到的是点击曝光,您可以使用device.exposurePointOfInterestSupported检查该内容。一旦您知道可以使用它,请使用device.exposurePointOfInterest设置您的PoI。

Apple Docs

详细说明了每种模式的所有细节

希望它有所帮助!