我有一个gc()
,它从前一个label
获取信息,如下所示
view controller
这是场景:
@IBOutlet weak var textField: UITextField!
var label = String()
func textFieldDidBeginEditing(_ textField: UITextField) {
self.textField.text = String(self.label.dropLast())
}
当我开始编辑textField on loading: Apple (edit Icon)
textField on editing first time: Apples are healthy
textField on tapping again: Apple
时,一切都很好,但是当我在外面轻按或转到另一个字段并返回到textField
时,所有编辑都消失了。如何防止这种情况发生?
答案 0 :(得分:2)
我认为这是因为每次您点击textField都会调用textFieldDidBeginEditing
,因此文本会重置为标签的文本。
如果这是一次性任务,则应考虑在viewDidLoad
中进行。如果您不想更改标签的初始值,也可以保留它。
您还可以将文本分配给textFieldDidEndEditing
中的label属性。