【问题标题】:iOS - Add Tap Gesture to UITextFieldiOS - 将点击手势添加到 UITextField
【发布时间】:2014-09-04 22:31:40
【问题描述】:

我在向我的 UITextField 添加点击手势时遇到问题。下面的代码:

@IBAction func hanldeTap(recognizer: UITapGestureRecognizer) {
    println("works")
}

此操作与点击手势识别器相关联。在我的 TextField 中,我在 OutletCollections 中定义了 gestureRecognizer。在我看来它应该有效。在所描述的配置中,手势有效,例如用于按钮或自定义视图。

你能告诉我可能出了什么问题,我该如何解决这个问题?

【问题讨论】:

    标签: ios swift uitextfield uitapgesturerecognizer


    【解决方案1】:

    UITextField 有delegate methods,您可能需要考虑实现这些。或者只是将动作事件添加到您的文本字段。

    例如viewDidLoad

    textField.addTarget(self, action:Selector("textDidBeginEditing"), forControlEvents: UIControlEvents.EditingDidBegin)
    

    然后实现这个:

    func textDidBeginEditing(sender:UITextField) -> Void
    {
       // handle begin editing event
    } 
    

    【讨论】:

    • 为什么在 UITextField 中我不能只使用 UITapGesture?
    • 我想在这个文本上点击一次并显示一个弹出视图,当点击两次时我想隐藏它。我不认为我可以这样处理。我想我必须创建一个自定义视图。
    • 我同意你的最后一句话,更好的主意。
    【解决方案2】:

    如果你设置了textfields委托,你可以使用;

    optional func textFieldDidBeginEditing(_ textField: UITextField)

    optional func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多