swift4.2 - 距离传感器
import UIKit
class ViewController: UIViewController {
deinit {
NotificationCenter.default.removeObserver(self)
}
override func viewDidLoad() {
super.viewDidLoad()
//开启距离传感器功能
UIDevice.current.isProximityMonitoringEnabled = true
//监听物体开进或离开设备的通知
NotificationCenter.default.addObserver(self, selector: #selector(statusChange), name: UIDevice.proximityStateDidChangeNotification, object: nil)
}
/// 这个主要在 手机上方,电话听筒有相应 = = 下面没得反应
@objc func statusChange(){
//获取当前是否有物体靠近设备
if UIDevice.current.proximityState {
print("大佬来了")
}else{
print("大佬走了")
}
}
}
swift4.2 - 距离传感器的更多相关文章
- ios 距离传感器和摇一摇
//距离传感器,以注册通知的形式来实现的 #import "ViewController.h" @interface ViewController () @end @impleme ...
- Swift4 Json
swift4 带来了原生的json解析,它们分别是 JSONDecoder和JSONEncoder,使用起来还算方便,不过为了更方便,我把它们又进行了简单的封装: class JsonHelper { ...
- swift4.0 数据转模型
swift 4.0时代的到来,说明了swift已经趋于稳定了,已经完全可以入坑了. 下面就拿最简单的数据转模型来说说,实战一下. 接口使用: http://116.211.167.106/api/l ...
- IOS UIDevice距离传感器(打开 关闭)
● 什么是传感器 ● 传感器是一种感应\检测装置, 目前已经广泛应用于智能手机上 ● iPhone5中内置的传感器有 ● 运动传感器\加速度传感器\加速计(Motion/Acceleromet ...
- ios swift4之kvo的使用
在swift4之前,使用kvo只需要继承NSObject 就可以了.但是swift4之后发生了变化,必须在class之前加入@objcMembers修饰,不然就没有效果了. 下面举个例子:如定义一个P ...
- XCode10 swift4.2 适配遇到的坑
以下是2018年10月23日更新 经过大约一个月的时间的适配,项目正式使用XCode10(以下简称为10 or XC10)大部分库都升级为Swift4.2(以下简称为 4.2 or S4.2),下面是 ...
- iOS 获取类的字符串名称 Swift4
以下实例基于Swift4,且在class, struct, enum中都可用: class Foo { // 实例属性中指定明确的类名来获取名称 var typeName: String { ...
- Swift4 扩张(Extenstion), 集合(Set)
创建: 2018/03/09 完成: 2018/03/10 更新: 2018/04/19 修改小标题 [扩张的定义与使用协议] -> [通过扩张来采用协议] 更新: 2018/09/18 标题 ...
- Swift4 类与继承, 类型转换, 类型判断
创建: 2018/03/05 完成: 2018/03/07 更新: 2018/03/09 完善标题 [Swift4 类与继承, 类型转换] -> [Swift4 类与继承, 类型转换与判断] 补 ...
随机推荐
- LeetCode 题解 Search a 2D Matrix II。巧妙!
[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30 ...
- Xcode 8 注释快捷键失效
sudo /usr/libexec/xpccachectl 重启
- VULKAN学习资料收集
https://github.com/vinjn/awesome-vulkan 张静初 https://zhuanlan.zhihu.com/p/24798656 知乎 https://develop ...
- UnityHub破解
1.退出UnityHub,安装好nodejs执行以下命令 npm install -g asar 2.打开UnityHub安装目录如 C:\Program Files\Unity Hub\resour ...
- C++17尝鲜:variant
variant variant 是 C++17 所提供的变体类型.variant<X, Y, Z> 是可存放 X, Y, Z 这三种类型数据的变体类型. 与C语言中传统的 union 类型 ...
- Apache tica详述
Tika是一个内容抽取的工具集合(a toolkit for text extracting).它集成了POI, Pdfbox 并且为文本抽取工作提供了一个统一的界面.其次,Tika也提供了便利的扩展 ...
- canvas入门笔记
1.Canvas的使用注意 A.要在页面中添加一对canvas标记,默认占300*150的区域 B.我们可以通过html属性‘width’,‘height’来设置canvas的宽高,不可以通过cs ...
- C++ 关于 CMFCPropertyGridCtrl 的使用方法 之二 (原创)
接上一节所讲,这一节咱们重点讲一下CMFCPropertyGridCtrl 所支持的数据表格的建立过程 在上一节中,咱们已经了解到了 CMFCPropertyGridCtrl 是要用到实例函数:Ad ...
- 吴裕雄 26-MySQL 复制表
如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的.本章节将为大家介绍如何完整的复制MySQL数据 ...
- HTML各种标签复习
<html> --开始标签 <head> 网页上的控制信息 <title>页面标题</title> </head> <bod ...