XCode让我疯狂(再次)。人们如何使用它?
-[UIViewController look_for_offer:]: unrecognized selector sent to instance 0x4e34220
2011-04-30 18:38:25.207 myApp[8261:40b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIViewController look_for_offer:]: unrecognized selector sent to instance 0x4e34220'
这就是我的所作所为。我按了一个按钮。我点击了按钮,然后转到检查器中的“连接”选项卡。我从触摸事件拖到代码,它自动创建一个空方法和方法标题。这是方法:
- (IBAction)look_for_offer:(id)sender {
}
现在记住,我甚至没有写过。 Interface Builder为我生成了它。然而,当我构建并单击按钮时,我收到“无法识别的选择器”错误消息。
它从错误消息中看起来就像他正在尝试将消息look_for_offer发送到UIViewController。我不知道为什么他会这样做。该方法在我看来,它是UIViewController的子类:
@interface ClientSeekingView : UIViewController {
}
- (IBAction)look_for_offer:(id)sender;
我清楚地将动作拖入了类代码,而不是UIViewController。为什么他试图将消息发送到UIViewController而不是我的类?
我做错了什么?我如何取悦Xcode? p> PS:我多次清理和重建,没有帮助。
MRB
答案 0 :(得分:9)
看起来您没有将Interface Builder File's Owner
对象更改为您自己的类。 IB创建了UIViewController
类型的对象,而不是ClientSeekingView
。错误消息表明您的选择器正在发送到类UIViewController
的对象。
要更改班级,您可以使用 Identity Inspector 。