Ты пьян??

рограммно включить / выключить светодиодную камеру iPhone?

 raaz23 мар. 2012 г., 18:29
Не забудьте добавить AVFoundation.framework также ...

Ответы на вопрос(3)

Я объединил таймер с вышеупомянутым code.it работал для меня ...

 - (void)viewDidLoad
        {
         [super viewDidLoad];

         myTimer = [NSTimer scheduledTimerWithTimeInterval:0.5 target:self                    selector:@selector(toggleFlashlight) userInfo:nil repeats:YES];
        // Do any additional setup after loading the view from its nib.
        }
       - (void) toggleFlashlight
       {

    // check if flashlight available
    Class captureDeviceClass = NSClassFromString(@"AVCaptureDevice");
    if (captureDeviceClass != nil) {
        AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
        if ([device hasTorch] && [device hasFlash]){

            [device lockForConfiguration:nil];
            if (device.torchMode == AVCaptureTorchModeOff) 
            {
                [device setTorchMode:AVCaptureTorchModeOn];
                [device setFlashMode:AVCaptureFlashModeOn];
                //torchIsOn = YES;
            }
            else 
            {
                [device setTorchMode:AVCaptureTorchModeOff];
                [device setFlashMode:AVCaptureFlashModeOff];
               // torchIsOn = NO;            
            }
            [device unlockForConfiguration];
        }
    } }
 Nick Turner30 мар. 2015 г., 18:50
Проще просто положить его в viewDidAppear.
#import <AVFoundation/AVFoundation.h>

...

- (void) turnTorchOn: (bool) on {

    // check if flashlight available
    Class captureDeviceClass = NSClassFromString(@"AVCaptureDevice");
    if (captureDeviceClass != nil) {
        AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
        if ([device hasTorch] && [device hasFlash]){

            [device lockForConfiguration:nil];
            if (on) {
                [device setTorchMode:AVCaptureTorchModeOn];
                [device setFlashMode:AVCaptureFlashModeOn];
                //torchIsOn = YES; //define as a variable/property if you need to know status 
            } else {
                [device setTorchMode:AVCaptureTorchModeOff];
                [device setFlashMode:AVCaptureFlashModeOff];
                //torchIsOn = NO;            
            }
            [device unlockForConfiguration];
        }
    } }
 Mick MacCallum02 мар. 2013 г., 20:41
Вы можете заменить iVar наdevice.torchActive.
 h0ussni03 февр. 2013 г., 18:44
Где вы заявляетеtorchIsOn ?
 Dejell06 февр. 2013 г., 13:50
@YassineHoussni вы можете определить его как iVar в имени класса или как свойство, если вам нужны методы получения и установки
 Leslie Godwin05 июл. 2013 г., 08:51
Лучший способ проверить класс: if ([AVCaptureDevice class]) {...} // если у вас есть SDK, у которого есть класс, но вы не уверены, что класс существует на устройстве.
 h0ussni06 февр. 2013 г., 13:53
@ Odelya да, я уже нашел решение, я определил его как собственность, хотя спасибо!

oo) и NSTimer (mytimer) в вашем файле .h, а также некоторый код

 -(void)doSmethingfoo { myTimer = [NSTimer scheduledTimerWithTimeInterval:0.5 target:self     selector:@selector(showActivityfoo) userInfo:nil repeats:YES]; } 
 Peter05 янв. 2017 г., 01:46
Ты пьян??
 Andres Canella08 апр. 2014 г., 05:02
это не имеет ничего общего с предметом.

Ваш ответ на вопрос