我怎么知道编辑是在以UIPickerView作为输入的UITextField上开始的?

时间:2019-02-25 21:12:50

标签: ios swift uitextfield uikit uipickerview

我将UIPickerView设置为UITextField的输入。我怎么知道用户何时按下UITextField?

我已经尝试过TouchDownEditingDidStart事件,但是它们不会触发。

将事件链接到方法的代码如下

myTextField.addTarget(self, action: #selector(myMethod), for: .<Event>)

2 个答案:

答案 0 :(得分:2)

使用func textFieldDidBeginEditing(_ textField: UITextField)中的委托方法UITextFieldDelegate

并且不要忘记成为yourTextField.delegate = self之类的文本字段委托 https://developer.apple.com/documentation/uikit/uitextfielddelegate/1619590-textfielddidbeginediting

答案 1 :(得分:1)

您需要在项目中添加UITextFieldDelegate,然后将其委托给您的文本字段,如:

class yourClassName: UIViewController , UITextFieldDelegate  {

    @IBOutlet weak var yourTextField: UITextField!

override func viewDidLoad() 
    {
    super.viewDidLoad()
    yourTextField.delegate = self
    }
} 

您需要实施

func textFieldDidBeginEditing(_ textField: UITextField) {
    //Code here
}