如何将文本添加到活动的UITextField

时间:2015-05-22 15:17:44

标签: swift uitextfield

我有几个UITextField和一个UIButton。如果我点按UIButton,我想在活动UITextField中放置一些静态文本。

类似于:

@IBAction func buttonEen(sender: UIButton) {
    'active textField'.text = "static text"
}

但是,如何确定哪个UITextField是有效UITextField以及我该如何找到它?

2 个答案:

答案 0 :(得分:3)

要在上一个有效的UITextField中撰写文字,您必须让UIViewController成为UITextField的代表

例如:

class ViewController: UIViewController, UITextFieldDelegate

声明activeField变量

例如:

var activeField: UITextField?

然后实现textFieldDidBeginEditing

例如:

func textFieldDidBeginEditing(textField: UITextField)
{
    activeField = textField
}

所以你的按钮功能就像

@IBAction func buttonEen(sender: UIButton) {
if activeField
    {
        activeField.text = "static text"
    }

}

答案 1 :(得分:1)

首先,您需要创建文本字段委托(可能在'ViewDidLoad()'中):

activeTxtField.delegate = self

然后您需要实现textField委托函数:

extension 'YourVC': UITextFieldDelegate {

    func textFieldDidBeginEditing(_ textField: UITextField) {
        if textField == activeTxtField {
        // Do whatever you want
        // e.g set textField text to "static text"
     }
  }
}