我想检测UITextField上的触摸 Action 。

似乎没有通过在文本字段内部进行触摸来触发“在内部进行触摸”操作。

最佳答案

似乎UITextField未启用“内部Touch Up”,但“Touch Down”有效。

因此解决方案如下:

Swift 4.x

myTextField.addTarget(self, action: #selector(myTargetFunction), for: .touchDown)
@objc func myTargetFunction(textField: UITextField) {
    print("myTargetFunction")
}

Swift 3.x
myTextField.addTarget(self, action: #selector(myTargetFunction), for: UIControlEvents.touchDown)

@objc func myTargetFunction(textField: UITextField) {
    print("myTargetFunction")
}

10-06 00:05