在iOS里面闪光灯的使用依赖于AVFoundation,创建具体媒体对象,然后加锁设备、调用、解锁即可。

正文:

import UIKit
import SnapKit
import AVFoundationclass SecondViewController: UIViewController {// 创建Device实例对象let device = AVCaptureDevice.default(for: AVMediaType.video)let buttonFlashLow = UIButton(type: UIButton.ButtonType.system)private func initView(){buttonFlashLow.setTitle("Flash", for: UIControl.State())buttonFlashLow.addTarget(self, action: #selector(flashLight), for: UIControl.Event.touchUpInside)buttonFlashLow.snp.makeConstraints{ make inmake.width.equalTo(100)make.height.equalTo(60)}override func viewDidLoad() {super.viewDidLoad()initView()}@objc func flashLight(){if device!.hasTorch && ((device?.isTorchAvailable) != nil){// 加锁try? device?.lockForConfiguration()if device?.torchMode == .off{// 开灯device?.torchMode = .on}else{// 关灯device!.torchMode = .off}// 解锁device!.unlockForConfiguration()}}}

Swift 闪光灯的使用相关推荐

  1. 使用AVFoundation完成照片拍摄存储相册, 开启关闭闪光灯, 切换摄像头

    在开启这个旅程之前, 请记住, AVFoundation是一个复杂的工具. 在很多情况下, 我我们使用苹果默认的API(比如:UIImagePickerController)就足够了. 在您阅读之前, ...

  2. Swift与LLVM-Clang原理与示例

    Swift与LLVM-Clang原理与示例 LLVM 学习 从 简单汇编基础 到 Swift 不简单的 a + 1 作为iOS开发,程序崩溃犹如家常便饭,秉着没有崩溃也要制造崩溃的原则 每天都吃的很饱 ...

  3. swift笔记——环境搭建及Hello,Swift!

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/enson16855/article/details/29829601 首先要下载XCode6.仅仅有 ...

  4. Swift中的问号?和感叹号!

    Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化.如果在使用变量之前不进行初始化就会报错: var ...

  5. swift java混合,如何在Swift中连接或合并数组?

    使用Swift 3,根据您的需求和品味,您可以选择其中一个 five following ways 来连接/合并两个数组 . 1.使用Swift标准库(: :)泛型运算符将两个数组合并为一个新数组 S ...

  6. swift文件服务器,Swift3一行代码将各种类型文件上传到服务器

    由于之前一直在忙项目,很久没有写过一篇像样的文章了,现在手上的项目基本是完成了,正好工作时间偷个懒写两篇文章. 将相机或相册图片上传到服务器 先看看最常见的图片上传,也可以选择跳过,后面有直接的封装方 ...

  7. Swift中NSRange和Range的转换

    最近项目再使用swift重构,遇到Range和NSRange转换的问题,这里记录下: 因为要使用NSRange,所以有了下面这段代码,将String转换为NSString后调用 range(of se ...

  8. swift中单例的创建及销毁

    最近项目重构时使用了oc和swift的混编,遇到了关于单例的创建及销毁,这里记录一下 //创建单例private static var _sharedInstance: ViewController? ...

  9. swift 加载gif 框架图片

    swift 加载gif 框架图片 SwiftGifOrigin 以下代码 轻松搞定 let imgView = UIImageView(frame: CGRect(x: 50, y: 100, wid ...

最新文章

  1. Hbase 和 MySQL 的区别是什么?一文深度对比!
  2. 《Linux命令详解手册》——Linux畅销书作家又一力作
  3. IEEE Spectrum调查:AI 的 6 种最坏情况
  4. 【转】Linux下Oracle sqlplus无法使用命令退格删除和历史记录的解决方法(使用rlwrap)...
  5. VC++6中的一些快捷键(陆续补充中。。。)
  6. SEM那些被人混淆的事儿(已完结)
  7. Qt的Socket通信
  8. 慕课堂计算机word,数字技能 – 办公工具(Microsoft Word、Excel、Power Point)
  9. element-ui upload组件 上传文件类型限制
  10. element 动态加载下拉框_动态增加select框(elementUI 框架)
  11. HashMap的工作原理--重点----数据结构示意图的理解
  12. 数据挖掘相关代码实践
  13. 筛选法建立初始堆_MTT法检测细胞增殖
  14. STM32中RTC唤醒停止模式
  15. 渗透测试工程师可以写进简历的技能介绍部分
  16. 宝塔linux 云锁安装卸载,Centos宝塔安装云锁带自编译好模块Nginx
  17. Qt 获取当前屏幕分辨率
  18. EntityComponentSystemSamples学习笔记
  19. addActionListener
  20. 【NLP】详聊NLP中的阅读理解(MRC)

热门文章

  1. 这 10 款良心 Windows 软件,改变你对国产的认知
  2. C#音频截取与原文匹配
  3. Java中List排序的3种方法
  4. 逍遥情缘服务器维护没通告,开服才两天等级就落后了?逍遥情缘前期升级要诀请记牢...
  5. 最强蜗牛击败毁灭机器人_最强蜗牛恶魔形态怎么玩_恶魔形态能力变化突变攻略_3DM手游...
  6. 华为手表计算机有什么功能,华为智能手表功能大全,华为智能手表有什么功能...
  7. 行内元素和块级元素有哪些
  8. 少年碎碎念:《我迷路了》
  9. malody登陆是显示服务器错误,Malody无法连接服务器是什么原因
  10. Python中的按位取反