我有一个 UISWitch
默认位置设置为 off
用户可选择将开关设置为on
,我如何通过另一个按钮/操作将该开关重新关闭。
- (IBAction)switchToggled:(id)sender {
if (_toggle.on){
AVCaptureDevice *backCamera = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if ( [backCamera isTorchAvailable] && [backCamera isTorchModeSupported:AVCaptureTorchModeOn] )
{
BOOL success = [backCamera lockForConfiguration:nil];
if ( success )
{
[backCamera setTorchMode:AVCaptureTorchModeOn];
[backCamera unlockForConfiguration];
}
}
}
else {
AVCaptureDevice *backCamera = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if ( [backCamera isTorchAvailable] && [backCamera isTorchModeSupported:AVCaptureTorchModeOn] )
{
BOOL success = [backCamera lockForConfiguration:nil];
if ( success )
{
[backCamera setTorchMode:AVCaptureTorchModeOff];
[backCamera unlockForConfiguration];
}
}
}
通过 ui 按钮重置开关状态:
- (IBAction)toggledOffSwitch:(id)sender {
_toggle.on = NO;
}
或
- (IBAction)toggledOffSwitch:(id)sender {
[_toggle setOn:NO];
[_toggle setEnabled: NO];
_torch.enabled = NO;
_torch.on = NO;
}
好像没有做
更新了更多代码
最佳答案
您确定在 Xcode 中连接了您的 - (IBAction)toggledOffSwitch:(id)sender
操作吗?
关于ios - 使用 AVCaptureDevice 时重置 UI 开关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15851742/