class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
let pan = UIPanGestureRecognizer(target: self, action: #selector(handlePanGesture))
pan.delegate = self
view.addGestureRecognizer(pan)
}
}
extension ViewController: UIGestureRecognizerDelegate {
func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldReceive touch: UITouch) -> Bool {
return true
}
}
extension ViewController {
@objc func handlePanGesture(_ sender: UIPanGestureRecognizer) {
switch sender.state {
case .possible: print("possible")
case .began: print("began")
case .changed: print("changed")
case .ended: print("ended")
case .cancelled: print("cancelled")
case .failed: print("failed")
@unknown default: break
}
print("alternate:", sender.modifierFlags.contains(.alternate))
print("command:", sender.modifierFlags.contains(.command))
print("control:", sender.modifierFlags.contains(.control))
print("shift:", sender.modifierFlags.contains(.shift))
}
}
Why does the key press cause UIGestureRecognizer to ended in Mac Catalyst
Add a Comment