禁用iPhone 3G S中的自动对焦功能

时间:2009-09-02 07:19:55

标签: iphone objective-c

我想禁用iPhone 3G S中的自动对焦功能。

我如何以编程方式完成?

我使用自定义UIImagePickerController作为我的相机应用程序。我的应用程序中不需要此功能。

请帮帮我。

2 个答案:

答案 0 :(得分:1)

以下代码应该适用于您想要的内容:

NSArray *devices = [AVCaptureDevice devices];
NSError *error;
for (AVCaptureDevice *device in devices) {
    if (([device hasMediaType:AVMediaTypeVideo]) && 
        ([device position] == AVCaptureDevicePositionBack) ) {
        [device lockForConfiguration:&error];
         if ([device isFocusModeSupported:AVCaptureFocusModeLocked]) {
         device.focusMode = AVCaptureFocusModeLocked;
         NSLog(@"Focus locked");
         }

        [device unlockForConfiguration];
    }
}

here

答案 1 :(得分:0)

一般情况下,您的应用程序不应更改此设置,如果您的用户不想使用自动对焦,那么他们可以禁用它,但您的应用不应该为他们做出选择。

你有什么理由需要控制它吗?它是否会以某种方式干扰您所需的功能?