我有一个具有UIScrollView的ViewController,键盘在使用tapGestureRecognizer时不会被忽略。行动甚至不会开火。通常这适用于我构建的其他ViewControllers。
我认为UIScrollView正在吃掉所有触摸事件。我知道您可以设置UIScrollView来关闭键盘,但我需要它来识别tapGesture。这是我的代码:
@IBOutlet var tapGesture: UITapGestureRecognizer!
tapGesture = UITapGestureRecognizer(target: self, action: "tapRecognized:")
self.view.addGestureRecognizer(tapGesture)
tapGesture.cancelsTouchesInView = false
func tapRecognized(recognizer: UITapGestureRecognizer){
self.truckName.resignFirstResponder()
self.engineMake.resignFirstResponder()
truckName.endEditing(true)
self.view.endEditing(true)
println("tap gesture")
}
答案 0 :(得分:1)
我明白了,它无法正常工作的原因是因为我将tapGesture添加到superview而不是scrollview中的内容视图。我很高兴我解决了这个问题,但是当你花费数小时努力时就讨厌它,并且一旦你发布问题就会讨厌它。