0

我在我的 ios 应用程序中使用 zbar sdk。我想调暗相机闪光灯。在 ios 文档中,我找到了AVCaptureDevice

- (BOOL)setTorchModeOnWithLevel:(float)torchLevel error:(NSError **)outError

在 AVCaptureDevice 类中,setTorchModeOnWithLevel 函数将光照级别设置在 0-1 之间。在 zbar sdk 中,我在 readerview 类中找到了这个对象,我正在使用以下代码

    ZBarReaderViewController *mReader =  [[ZBarReaderViewController alloc] init];
    mReader.showsZBarControls = NO;
    mReader.showsHelpOnFail = NO;
    mReader.cameraFlashMode = UIImagePickerControllerCameraFlashModeOff;

    mReader.readerDelegate = self;
    //    reader.cameraDevice = UIImagePickerControllerCameraDeviceFront;
    mReader.supportedOrientationsMask = ZBarOrientationMaskAll;
    CGRect cropRect = CGRectMake(0, 0, cameraView.frame.size.width , cameraView.frame.size.height);

    mReader.view.frame = cropRect;

    mReader.cameraOverlayView = [self setOverlayPickerView];
    AVCaptureDevice *mDevice = mReader.readerView.device; //mReader.readerView.device returns object of AVCaptureDevice

当我尝试访问 AVCaptureDevice 函数时,它没有显示任何建议,当我手动编写它时,它会给出错误。

[mDevice setTorchModeOnWithLevel:0.5 error:error];

如何使用 AVCaptureDevice 对象来设置闪光灯的暗淡程度?

4

3 回答 3

0

Zbar SDK 中没有 API 来控制闪光灯亮度。您只需打开/关闭闪光灯。

于 2013-09-10T06:55:56.393 回答
0

我正在调用以下给出错误的函数

[mDevice setTorchModeOnWithLevel:0.5 error:error];

错误的原因是我没有在构建设置中包含 AVFoundation 库。包含我的错误解决 了@rakeshNS后,我们可以使用调暗 zbar sdk 灯

AVCaptureDevice *mDevice = mReader.readerView.device;
[mDevice setTorchModeOnWithLevel:0.5 error:nil];

感谢大家

于 2013-09-10T18:49:02.887 回答
-1

我正在使用下面的代码希望它可以帮助你:)

reader = [ZBarReaderViewController new];
reader.readerDelegate = self;

reader.readerView.torchMode = 2;
reader.showsZBarControls = FALSE;
reader.tracksSymbols = YES;
[reader.scanner setSymbology: ZBAR_ISBN13
                      config: ZBAR_CFG_ENABLE
                          to: 0];
reader.readerView.zoom = 1.0;

reader.cameraOverlayView = [self setLayoutView];


if([[defaults valueForKey:@"flashLight1"] isEqualToString:@"off"] )
    reader.cameraFlashMode = UIImagePickerControllerCameraFlashModeOff;
else
reader.cameraFlashMode = UIImagePickerControllerCameraFlashModeOn;
于 2013-09-10T06:26:05.970 回答