我在addTarget
上设置了UITextField
,可以在editingDidBegin
时清除占位符文本。但是,如果用户单击另一个UITextField
,或者该字段为空,我不知道如何恢复占位符文本。
它位于viewDidLoad()
firstInitialTextField.addTarget(self, action: #selector(clearPlaceholderInTextField), for: UIControl.Event.editingDidBegin)
此功能位于程序的主体中。
@objc func clearPlaceholderInTextField() {
firstInitialTextField.placeholder = ""
}
我想将几个相同的功能应用于这些字段。
答案 0 :(得分:0)
为所有文本字段创建出口集合
@IBOutlet var textFs:[UITextField]!
每个具有不同的标签,以及您在viewDidLoad
中设置的placeHolders数组
var placeholders = [String]()
然后在viewDidLoad
textFs.forEach { $0.delegate = self }
实施
func textFieldDidBeginEditing(_ textField: UITextField) {
textField.placeholder = ""
}
func textFieldDidEndEditing(_ textField: UITextField) {
textField.placeholder = placeholders[textField.tag]
}