我有一个ViewController
,其中的String
变量称为query
,许多UITextField
每个都有各自独立的委托Swift文件,因为它们每个都有不同的行为。
在UITextField
中常见的一件事是,我想在用户按下回车键时将query
设置为等于textField.text
。
我认为这应该在每个委托文件的textFieldShouldReturn
方法下发生,但是我不清楚如何在每个委托Swift文件中将textField.text
传递回ViewController
并将其设置为query
。
最佳答案
您可以在viewDidAppear
中使用这样的通知
NSNotificationCenter.defaultCenter().addObserver(self, selector:"didChanged:" , name: UITextFieldTextDidEndEditingNotification, object: nil);
然后
func didChanged(notification:NSNotification){
//notification conatins your textfield info
let textfield = notification.object as! UITextField
}
不要忘记删除
viewDidDisappear
中的观察者 NSNotificationCenter.defaultCenter().removeObserver(self, name: UITextFieldTextDidEndEditingNotification, object: nil)
关于ios - UITextField返回键在ViewController中进行更改?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30496408/