为了账号安全,请及时绑定邮箱和手机立即绑定

Objective-C中的“无法识别的选择器发送到实例”错误

Objective-C中的“无法识别的选择器发送到实例”错误

一只名叫tom的猫 2019-09-21 11:14:58
我创建了一个按钮并为其添加了一个动作,但是一旦调用它,我就会收到此错误:-[NSCFDictionary numberButtonClick:]: unrecognized selector sent to instance 0x3d03ac0 2010-03-16 22:23:58.811 Money[8056:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason:'*** -[NSCFDictionary numberButtonClick:]:  unrecognized selector sent to instance 0x3d03ac0'这是我的代码:- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {    if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {        UIButton *numberButton = [UIButton buttonWithType:UIButtonTypeCustom];                numberButton.frame = CGRectMake(10, 435, 46, 38);        [numberButton setImage:[UIImage imageNamed:@"one.png"] forState:UIControlStateNormal];        [numberButton addTarget:self action:@selector(numberButtonClick:) forControlEvents:UIControlEventTouchUpInside];        [self.view addSubview: numberButton];     }return self;}-(IBAction)numberButtonClick:(id)sender{    NSLog(@"---");}
查看完整描述

3 回答

?
慕标5832272

TA贡献1966条经验 获得超4个赞

看来您没有正确地管理视图控制器的内存,并且正在某个时候将其释放—这导致该numberButtonClicked:方法被发送到另一个对象,该对象现在正在占用视图控制器以前占用的内存...

确保您正确保留/释放了视图控制器。


查看完整回答
反对 回复 2019-09-21
?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

这是Google针对此问题的最佳答案,但我有不同的原因/结果-我想我要加2美分,以防其他人偶然发现此问题。

就在今天早上,我遇到了类似的问题。我发现,如果右键单击出现问题的UI项,则可以看到已创建的连接。就我而言,我的按钮最多可连接两个动作。我从右键单击菜单中删除了这些操作,然后重新连接了它们,问题得到解决。

因此,请确保您的操作正确连接。


查看完整回答
反对 回复 2019-09-21
  • 3 回答
  • 0 关注
  • 586 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信