【问题标题】:UITapGestureRecognizer for UIPIckerViewUIPIckerView 的 UITapGestureRecognizer
【发布时间】:2014-10-20 11:08:27
【问题描述】:

带有 UIPickerView 的 UITapGestureRecognizer 无法正常工作。为什么?

class someVC: UIViewController, UITapGestureRecognizerDelegate

override func viewDidLoad() {
   let tap = UITapGestureRecognizer(target: self, action: "dismissKeyboard")
   self.pickerView.addGestureRecognizer(tap)
   tap.delegate = self
}

func dismissKeyboard() {
   textField.resignFirstResponder()
}

【问题讨论】:

    标签: swift uipickerview uitapgesturerecognizer


    【解决方案1】:

    我通过添加覆盖 getureRecognizer 解决了问题

    func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWithGestureRecognizer otherGestureRecognizer: UIGestureRecognizer) -> Bool {
        return true
    }
    

    【讨论】:

      【解决方案2】:

      看起来不错,会不会是另一个手势识别器吞下了水龙头?您需要确保您的对象位于视图堆栈的顶部,以确保它被触发。您还设置了委托,是否调用了委托方法?还是他们也不开火?如果他们不这样做,则意味着您的点击手势没有被触摸(另一个手势正在触摸),如果它确实被触发,则意味着该操作有问题(但我怀疑是这种情况)。

      【讨论】:

      • 谢谢。我通过覆盖gestureRecognizer解决了这个问题
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多