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 - 距离传感器的更多相关文章

  1. ios 距离传感器和摇一摇

    //距离传感器,以注册通知的形式来实现的 #import "ViewController.h" @interface ViewController () @end @impleme ...

  2. Swift4 Json

    swift4 带来了原生的json解析,它们分别是 JSONDecoder和JSONEncoder,使用起来还算方便,不过为了更方便,我把它们又进行了简单的封装: class JsonHelper { ...

  3. swift4.0 数据转模型

    swift 4.0时代的到来,说明了swift已经趋于稳定了,已经完全可以入坑了. 下面就拿最简单的数据转模型来说说,实战一下. 接口使用:  http://116.211.167.106/api/l ...

  4. IOS UIDevice距离传感器(打开 关闭)

    ●  什么是传感器 ●  传感器是一种感应\检测装置, 目前已经广泛应用于智能手机上 ●  iPhone5中内置的传感器有 ●  运动传感器\加速度传感器\加速计(Motion/Acceleromet ...

  5. ios swift4之kvo的使用

    在swift4之前,使用kvo只需要继承NSObject 就可以了.但是swift4之后发生了变化,必须在class之前加入@objcMembers修饰,不然就没有效果了. 下面举个例子:如定义一个P ...

  6. XCode10 swift4.2 适配遇到的坑

    以下是2018年10月23日更新 经过大约一个月的时间的适配,项目正式使用XCode10(以下简称为10 or XC10)大部分库都升级为Swift4.2(以下简称为 4.2 or S4.2),下面是 ...

  7. iOS 获取类的字符串名称 Swift4

    以下实例基于Swift4,且在class, struct, enum中都可用:     class Foo { // 实例属性中指定明确的类名来获取名称 var typeName: String { ...

  8. Swift4 扩张(Extenstion), 集合(Set)

    创建: 2018/03/09 完成: 2018/03/10 更新: 2018/04/19 修改小标题  [扩张的定义与使用协议] -> [通过扩张来采用协议] 更新: 2018/09/18 标题 ...

  9. Swift4 类与继承, 类型转换, 类型判断

    创建: 2018/03/05 完成: 2018/03/07 更新: 2018/03/09 完善标题 [Swift4 类与继承, 类型转换] -> [Swift4 类与继承, 类型转换与判断] 补 ...

随机推荐

  1. js的非空校验

    利用TagName获取元素名称,进行批量非空校验 var input = document.getElementsByTagName("input"); for (var i=0; ...

  2. URL分发(URLConf)

    如果项目中应用太多,都写到顶层的urls.py中,如果个别应用url出问题的话,其他的应用也会受影响,所以我们需要对每个应用下面都写一个urls.py,实现分发 顶层urls.py中写:(属于blog ...

  3. 使用dig或nslookup指定dns服务器查询域名解析

    一般来说linux下查询域名解析有两种选择,nslookup或者dig,而在使用上我觉得dig更加方便顺手.如果是在linux下的话,只要装上dnsutils这个包就可以使用dig命令, 安装bind ...

  4. Unity 菜单拓展

    添加自定义菜单项 [MenuItem("test/item1 %g")] public static void haha() { Debug.Log("this is a ...

  5. django 认证系统--3

    WEB request中的认证 django使用sessions和middleware和reqeust对象联系在一起 它们通过给每一个reqeust请求添加一个request.user属性来代表当前用 ...

  6. Structs复习 通配符

    1.jar包 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version= ...

  7. arcgis_SDE安装步骤

    弄了将近一个星期的Oracle和ArcSDE终于让我给弄好了!下面把过程跟大家分享一下: 首先是Oracle10gR2的安装,在Oracle的官方网站上可以下到Oracle10gR2的安装程序,安装过 ...

  8. hive\hadoop 常用命令

    —1—————— 后台跑程序语句: 在shell下输入: nohup hive -f  aaa.sql >bbb.log 2>&1 & 然后把sql 的脚本导入服务器上:T ...

  9. css3选择器补充

    一.关系选择器 1.E+F   (E元素下一个满足条件的兄弟元素节点) <style> div + p{ background-color:red;// 第一个p元素变色 } </s ...

  10. node-pre-gyp install --fallback-to-build 错误

    [node-pre-gyp install --fallback-to-build 错误] npm install bcrypt时遇上错误 此时,安装node-gyp npm install -g n ...