好吧,我不知道发生了什么。我对 iOS 还比较陌生,所以我的调试技能还达不到他们需要的水平。我有一个文本字段工作得很好,直到我在我的应用程序中做了一些更改,这些更改与文本字段没有任何关系(至少我认为它们没有)。在我尝试输入后,我不断收到此错误“-[NSNull length]:无法识别的选择器发送到实例 0x1a1803490”。在调试区域打印“确实开始编辑”之后。任何帮助表示赞赏。提前致谢。
这是我的代码:
@IBAction func textFieldActions(sender: AnyObject) {
print("text field actions")
}
func textFieldDidBeginEditing(textField: UITextField) {
textField.becomeFirstResponder()
print("did begin editing")
}
func textFieldDidEndEditing(textField: UITextField) {
textField.resignFirstResponder()
print("did end ediditing")
}
func textFieldShouldReturn(textField: UITextField) -> Bool {
textField.resignFirstResponder()
textField.text = nil
return true
}
最佳答案
好吧,基本上您收到的错误意味着您正在尝试在没有此类方法的对象上调用某些方法。 这里的对象实际上是 null,因此您尝试对 null 的对象调用方法。您可能在代码中的某个地方清空了文本字段?
您在这里给出的代码很好,所以它不是来自于此,在破坏代码之前没有改变什么?
此外,我们需要找到错误发生的位置。为此,创建一个异常断点,以便 Xcode 指出发生崩溃的确切行:
Debug>Breakpoints>Create exception breakpoint...>ok
关于ios - UITextField 麻烦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38928252/