NSInvalidArgumentException ||无法识别的选择器发送到实例

时间:2012-07-17 07:49:50

标签: iphone ios xcode invalidargumentexception

我有一个tableView,我在一个单元格上创建一个Button。

UIButton *deleteGroupButton = [UIButton buttonWithType:UIButtonTypeCustom];
    [deleteGroupButton setFrame:CGRectMake(218, 12, 40, 60)];
    [deleteGroupButton addTarget:self action:@selector(deleteGroupButtonClicked:) forControlEvents:UIControlEventTouchUpInside];

当我点击按钮时,该消息发生异常:

  

“因未捕获的异常而终止应用   'NSInvalidArgumentException',原因:' - [Group deleteGroup:]:   无法识别的选择器发送到实例0x5a8afc0'“

那是我的deleteGroupButtonClicked方法

- (void) deleteGroupButtonClicked: (id) sender {    

    Groups *tmpGroups = [[Group alloc] init];
    NSInteger tmp = appDelegate.selectedGroupId;
    [tmpGroups deleteGroup:tmp];
    [tmpGroups release];
}

2 个答案:

答案 0 :(得分:1)

你的deleteGroupButtonClicked:方法中有一些奇怪的东西,

你有一个类Groups的对象,但你正在分配一个类Group的对象。我猜GroupsGroup个对象的集合。在这种情况下,deleteGroup:方法只存在于Groups类中。

答案 1 :(得分:0)

只需使用以下内容替换deleteGroupButtonClicked方法:

- (void) deleteGroupButtonClicked: (id) sender 
{    

Groups *tmpGroups = [[Groups alloc] init];
NSInteger tmp = appDelegate.selectedGroupId;
[tmpGroups deleteGroup:tmp];
[tmpGroups release];
}