J'ai besoin de mon NSButton
pour répondre aux clics réguliers, ainsi qu'aux pressions longues. J'ajoute NSPressGestureRecognizer
comme ceci:NSPressGestureRecognizer appelé avant minimumpressDuration
override func viewDidLoad() {
super.viewDidLoad()
let gr = NSPressGestureRecognizer()
gr.minimumPressDuration = 1
gr.action = #selector(handleLongPress)
button.addGestureRecognizer(gr)
}
func handleLongPress(gr: NSPressGestureRecognizer) {
if gr.state == .Began {
Swift.print("long press")
}
}
Malheureusement, les feux handleLongPress
au hasard, même à court clics simples ou doubles clics. Cela arrive même si je mets le minimumPressDuration
à des valeurs plus élevées.
J'ai essayé de jouer avec le shouldBeRequiredToFailByGestureRecognizer
mais cela ne résout pas le problème.
Y at-il quelque chose qui me manque avec mon code?