“无法识别的选择器”,它不存在

时间:2012-08-31 03:54:15

标签: objective-c ios xcode ios4 selector

我在崩溃的iPhone应用程序中遇到问题,在调试器控制台中显示以下消息:

  

2012-08-31 12:31:24.628 test_app [1672:207] - [My_ViewController   tapDetected:]:无法识别的选择器发送到实例0x7621ef0

奇怪的是,在我的代码中,“tapDetected”甚至不再存在。它曾经是一种方法,但已被删除并被另一种方法取代。

我注意到,当我查看.xib文件时,在第一个响应者中,“tapDetected”仍然出现在列表中。 但我不知道这是否与我的问题有关,我也没有办法删除它。

欢迎任何有关此问题的想法或建议。

4 个答案:

答案 0 :(得分:1)

从.xib中删除tapDetected:方法,从中调用它。

答案 1 :(得分:0)

打开.xib文件。选择生成错误的.xib文件中的按钮。选择显示实用程序 =>单击连接检查器 =>选中已发送事件列表。删除tapDetected的连接:如果退出。

答案 2 :(得分:0)

这可能是因为xib中的按钮(我猜测它在按下时会给出错误)仍然连接到方法..在你的xib文件中..只需从该按钮的连接检查器列表中删除该连接。

答案 3 :(得分:0)

我想补充一点,当您处理界面构建器内容和xib文件时,无论是否确保从xib文件中删除了某些内容,您的应用程序有时也会崩溃。

我了解到这是因为模拟器上的应用程序的先前副本以某种方式“缓存”了xib内容。

修复方法是从模拟器或设备中删除应用程序实例,然后重新运行应用程序。

相关问题