Ios 为什么我的应用程序在点击背景时崩溃?

Ios 为什么我的应用程序在点击背景时崩溃?,ios,objective-c,selector,Ios,Objective C,Selector,当应用程序进入警报状态,我按下背景图像时,会收到以下错误消息 2015-04-04 01:06:39.583 APP[479:44057] -[__NSCFString resignFirstResponder]: unrecognized selector sent to instance 0x16d627c0 2015-04-04 01:06:39.584 APP[479:44057] *** Terminating app due to uncaught exception 'NSInva

当应用程序进入警报状态,我按下背景图像时,会收到以下错误消息

2015-04-04 01:06:39.583 APP[479:44057] -[__NSCFString resignFirstResponder]: unrecognized selector sent to instance 0x16d627c0
2015-04-04 01:06:39.584 APP[479:44057] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString resignFirstResponder]: unrecognized selector sent to instance 0x16d627c0'
*** First throw call stack:
(0x270e35a7 0x34cc9c77 0x270e8a6d 0x270e6949 0x27017b68 0x4ed91 0x2a76507f 0x2a6139ed 0x2aa29951 0x2a5dd3c5 0x2a5db33f 0x2a611ddd 0x2a6116ad 0x2a5e7fbd 0x2a85bbb5 0x2a5e6a07 0x270aa237 0x270a964b 0x270a7cc9 0x26ff4b51 0x26ff4963 0x2e5331a9 0x2a646c91 0x4ca35 0x35272aaf)
libc++abi.dylib: terminating with uncaught exception of type NSException
通常这个屏幕没有错误,它只是在我为应用程序设置了报警状态之后发生的。应用程序使用此方法关闭脚本中某些视图上的键盘

-(void)dismissKeyboard { 
[message resignFirstResponder]; 
[contact1 resignFirstResponder]; 
[contact2 resignFirstResponder]; 
[contact3 resignFirstResponder]; 
}

从与杰克的聊天中可以看出,车祸的罪魁祸首是由以下方法造成的:

-(void)dismissKeyboard
{
    // ------------------------------------------------------
    // These variables appear to be NSString, so it crashes
    // ------------------------------------------------------
    [message resignFirstResponder];
    [contact1 resignFirstResponder];
    [contact2 resignFirstResponder];
    [contact3 resignFirstResponder];
}
因此,解决方案是简单地将其更改为:

-(void)dismissKeyboard
{
    [self.view endEditing:YES];
}

您显示的代码与您收到的崩溃无关。异常告诉您,
resignFirstResponder
消息已发送到
NSCFString
的实例-我猜您已将字符串指定给背景图像,而不是字符串中的UIImage或类似内容。您应该显示设置背景的代码您去哪里了
[self.myTextView resignFirstResponder]或您是否转到了
[self.myTextView.text辞职FirstResponder]?可能会失败吗P@Zhang我没有把钱放在那里,也没有辞职。也许我应该?添加全局异常断点是否有助于确定它将要崩溃的位置?请使用聊天中讨论和发现的任何相关信息改进您的问题,以便该问题将有助于未来的访问者。这样做将有助于提高该网站的质量,并可能有助于将您的问题的反对票改为赞成票。谢谢