UIScreenEdgePanGestureRecognizer 无法在 iOS 13 模拟器中工作
UIScreenEdgePanGestureRecognizer won't work in iOS 13 simulator
当我在 iOS 13 模拟器上部署时,UIScreenEdgePanGestureRecognizer
不会调用其操作选择器。相同的代码适用于 iOS 12 模拟器设备和真实的 iOS 13 硬件。
override func viewDidLoad() {
super.viewDidLoad()
let edgePan = UIScreenEdgePanGestureRecognizer(target: self, action: #selector(screenEdgeSwiped))
edgePan.edges = .left
view.addGestureRecognizer(edgePan)
}
@objc func screenEdgeSwiped(_ recognizer: UIScreenEdgePanGestureRecognizer) {
if recognizer.state == .recognized {
print("swipe gesture recognized ✔︎")
}
}
我创建了一个 small sample project。在 iOS 12 模拟器中滑动即可。在 iOS 13 模拟器中,不会调用选择器方法 screenEdgeSwiped
。
尝试为 iOS 模拟器启用 Window > Show Device Bezels
。我向 Apple 提交了一个关于此功能无法像以前那样工作的错误 (FB7253111),但他们说这是有意更改。
当我在 iOS 13 模拟器上部署时,UIScreenEdgePanGestureRecognizer
不会调用其操作选择器。相同的代码适用于 iOS 12 模拟器设备和真实的 iOS 13 硬件。
override func viewDidLoad() {
super.viewDidLoad()
let edgePan = UIScreenEdgePanGestureRecognizer(target: self, action: #selector(screenEdgeSwiped))
edgePan.edges = .left
view.addGestureRecognizer(edgePan)
}
@objc func screenEdgeSwiped(_ recognizer: UIScreenEdgePanGestureRecognizer) {
if recognizer.state == .recognized {
print("swipe gesture recognized ✔︎")
}
}
我创建了一个 small sample project。在 iOS 12 模拟器中滑动即可。在 iOS 13 模拟器中,不会调用选择器方法 screenEdgeSwiped
。
尝试为 iOS 模拟器启用 Window > Show Device Bezels
。我向 Apple 提交了一个关于此功能无法像以前那样工作的错误 (FB7253111),但他们说这是有意更改。