我有一个 UISlider,如果我想将值更改为 + 它工作正常,但是当我回到 - 时,效果不正常。我的应用程序是一个手电筒,我通过 slider 改变肉体的频率。有什么可以帮助我的想法吗?
slider 索引正常。这是我的代码。
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];
}
}
最佳答案
我不是 100% 清楚这个问题,但您应该在每次更改 slider 时以及在创建新计时器之前使计时器无效。就目前而言,每次更改 slider 时都会创建一个新计时器,因此对切换方法的调用会比预期的多得多。
关于ios - 回到负号时的 Uislider 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28405032/