gpt4 book ai didi

ios - 接近传感器在首次使用后无法正常工作

转载 作者:行者123 更新时间:2023-11-28 08:06:19 25 4
gpt4 key购买 nike

我正在使用 SpriteKit 构建一个需要使用接近传感器的游戏。我有一个滑动手势可以打开接近感应,当接近传感器感应到它关闭的东西时。我的问题是,我第一次滑动并将手放在传感器上时,功能运行并且一切正常。第二次我滑动并将手放在传感器上时,屏幕变黑,当我将手从接近传感器移开时,它会运行该功能并且一切正常。我希望它在我将手放在传感器上而不是在我移开手时激活并运行该功能。有人不知道我该如何解决这个问题吗?

接近传感器代码:

func setProximitySensorEnabled(_ enabled: Bool) {
let device = UIDevice.current
device.isProximityMonitoringEnabled = enabled
if device.isProximityMonitoringEnabled == true {
NotificationCenter.default.addObserver(self, selector: #selector(proximityChanged), name: .UIDeviceProximityStateDidChange, object: device)
print("added observer!!!")
} else {
NotificationCenter.default.removeObserver(self, name: .UIDeviceProximityStateDidChange, object: nil)
print("removed observer!!!")
}
}

func proximityChanged(_ notification: Notification) {
if let device = notification.object as? UIDevice {
print("\(device) detected!")
print("An object is near!!")

vibrate()

setProximitySensorEnabled(false)

}
}

滑动功能:

func swipe() {
print("swipe detected")
setProximitySensorEnabled(true)
}

最佳答案

在我的例子中,我发现在我的项目中某处设置了 UIDevice.current.isProximityMonitoringEnabled = false 在我添加观察者之后。选择器方法将不会收到任何通知。

关于ios - 接近传感器在首次使用后无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44997548/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com