作者:you_only89 | 来源:互联网 | 2024-11-04 11:18
在iOS设备上实现闪光灯的开关控制功能,可以通过编写自定义的ViewController代码来实现。本文介绍了具体的实现方法,并提供了详细的代码示例,帮助开发者轻松掌握这一功能的开发技巧。
//
// ViewController.m
// Flash
//
// Created by fe on 2017/1/3.
// Copyright © 2017年 fe. All rights reserved.
//
#import "ViewController.h"
#import //调用闪光灯需要导入该框架
@interface ViewController ()
- (IBAction)openFlash:(UIButton *)sender;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)openFlash:(UIButton *)sender {
sender.selected = !sender.selected;
if (sender.isSelected == YES) { //打开闪光灯
AVCaptureDevice *captureDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
NSError *error = nil;
if ([captureDevice hasTorch]) {
BOOL locked = [captureDevice lockForConfiguration:&error];
if (locked) {
captureDevice.torchMode = AVCaptureTorchModeOn;
[captureDevice unlockForConfiguration];
}
}
}else{//关闭闪光灯
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if ([device hasTorch]) {
[device lockForConfiguration:nil];
[device setTorchMode: AVCaptureTorchModeOff];
[device unlockForConfiguration];
}
}
}
- (IBAction)closeFlash:(UIButton *)sender {
}
@end