2015-02-09 3 views
0

У меня есть UISlider, и он работает нормально, если я хочу изменить значение на +, но когда я вернусь - эффект не в порядке. Мое приложение - фонарик, и я изменяю frequncy для плоти из слайдера. Любая идее, которая может мне помочь?Значение Uislider при возврате к минусу

Индекс слайдера в порядке. Это мой код.

if ([self.lightON.currentImage isEqual:[UIImage imageNamed:@"off-1.png"]]) { 



     if (slider.value==0) { 
       AVCaptureDevice * captDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo]; 
         [captDevice lockForConfiguration:nil]; 
         [captDevice setTorchMode:AVCaptureTorchModeOn]; 
         [captDevice unlockForConfiguration]; 
      } 

      if (slider.value==1){ 
        myTimer = [NSTimer scheduledTimerWithTimeInterval:0.5 target:self     selector:@selector(toggleFlashlight) userInfo:nil repeats:YES]; 
    } 
      if (slider.value==2) { 
       myTimer = [NSTimer scheduledTimerWithTimeInterval:0.2 target:self     selector:@selector(toggleFlashlight) userInfo:nil repeats:YES]; 
      } 
      if (slider.value==3) { 
       myTimer = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self     selector:@selector(toggleFlashlight) userInfo:nil repeats:YES]; 
      } 
      if (slider.value==4) { 
       myTimer = [NSTimer scheduledTimerWithTimeInterval:0.02 target:self     selector:@selector(toggleFlashlight) userInfo:nil repeats:YES]; 

      } 
      if (slider.value==5) { 
       myTimer = [NSTimer scheduledTimerWithTimeInterval:0.01 target:self     selector:@selector(toggleFlashlight) userInfo:nil repeats:YES]; 

      } 
     } 
+0

Что не работает точно? Вы когда-либо лишаетесь тайны? – Wain

+0

он не работает для фонарика с таймером для слайдера.значения. i аннулировать таймер только тогда, когда я хочу остановить свет –

ответ

1

Я не 100% ясно, о проблеме, но вы должны быть недействительности функции таймера каждый раз, когда ползунок изменяется, и, прежде чем создавать новый таймер. Как бы то ни было, каждый раз, когда вы меняете ползунок, вы создаете новый таймер, поэтому у вас будет гораздо больше вызовов метода переключения, чем вы ожидаете.

+0

@Nicole SD Я считаю, что этот ответ поможет вам. Не остановить NSTimer станет причиной непредсказуемых ошибок. –

Смежные вопросы