【发布时间】:2015-02-06 09:28:07
【问题描述】:
我有一个手电筒应用程序。 我用它来制作闪光灯:
NSTimer * myTimer = [NSTimer scheduledTimerWithTimeInterval:0.05
target:self
selector:@selector(toggleFlashlight)
userInfo:nil
repeats:YES];`
- (void)toggleFlashlight{
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];
}
}
}
但我想在按下按钮时停止它。我怎样才能做到这一点?如果我没有闪光灯,它会停止亮灯。
【问题讨论】:
标签: ios objective-c nstimer flashlight