2013-09-10 1 views
0

Я использую zbar sdk в приложении ios. Я хочу затушить вспышку камеры. в ИО документации, которую я нашел AVCaptureDeviceКак установить уровень вспышки камеры в zbar sdk

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

В функции класса setTorchModeOnWithLevel AVCaptureDevice устанавливает уровень освещенности между 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, так что я могу установить тусклый уровень вспышки света ??

+0

пожалуйста, проверьте следующее: - http://stackoverflow.com/questions/15263296/flash-in- zbar-camera –

+0

Я хочу затушить свет вспышки камеры – Talha

ответ

0

я звоню следующую функцию, которая даст ошибку

[mDevice setTorchModeOnWithLevel:0.5 error:error]; 

Причиной ошибки было то, что я не включил библиотеку AVFoundation в настройке сборки. После включения моей ошибки решает @rakeshNS мы можем затемнить Zbar SDk света с помощью

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

Благодаря всем

-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; 
+0

Я хочу затушить свет вспышки камеры. – Talha

+0

reader.readerView.torchMode = 1; –

0

Там нет API в Zbar SDK для контроля уровня вспышки света. Вы можете включить или выключить вспышку.