斯威夫特 4.0 iOS 11.x
添加了一些 UITextfields,成为第一响应者,而不是这些观察者。但他们似乎从不开火?我在这里想念什么?
@IBOutlet weak var nameTextField: UITextField!
@IBOutlet weak var hintTextField: UITextField!
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
listenToTextFields()
}
private func listenToTextFields() {
let center = NotificationCenter.default
let queue = OperationQueue.main
namedObserver = center.addObserver(forName: NSNotification.Name.UITextViewTextDidChange, object: nameTextField, queue: queue) { (notification) in
print("You edited \(self.nameTextField.text)")
}
hintObserver = center.addObserver(forName: NSNotification.Name.UITextViewTextDidChange, object: hintTextField, queue: queue) { (notification) in
print("You edited \(self.hintTextField.text)")
}
}
当我在 nameTextField 或 hintTextField 中输入文本时,控制台不会打印任何内容。尝试使该类成为 UITextFieldDelegate,并确实设置了文本字段委托,但仍然没有通知向我发送?