在我的一个ViewControllers上,我声明:
@IBOutlet var priceTextField : UITextField!
然后我尝试基于相同的UITextField添加以下内容:
@IBAction func priceTextFieldChanged(sender: UITextField) { updateOutput() }
当我查看XIB的文件所有者和接收的操作时,由于某种原因,我无法将UITextField连接到此功能。我甚至试图将UITextField拖到ViewController上,但是却无法看到" Action"选项。我检查了课程。它已链接到ViewController。不知道该怎么做。
有什么建议吗?
答案 0 :(得分:1)
UITextField
未提供操作(sendAction:
),这就是您无法连接的原因。
您需要为textFieldDidBeginEditing
或UITextField
的其他委托方法创建委托,并将UITextField
委托设置为您的类实例。
答案 1 :(得分:0)
@Zaph,像这样:
class ViewController: UIViewController,UITextFieldDelegate {
@IBOutlet var priceTextField : UITextField!
func textFieldDidEndEditing(textField: UITextField) {
if let value = sender.textIntegerValue() {
pricetepper.ifInRangeSetValue(value)
}
updateOutput()
}
}
不确定我是否选择了正确的方法。感谢。