NSUnknownKeyException setValue:forUndefinedKey:

11

因为未捕获到“NSUnknownKeyException”异常而终止应用程序, 原因是:“[setValue:forUndefinedKey:]:此类不符合键值编码关于按钮buttonOfFirstView的规定。”

我为什么会收到这个错误?我正在尝试通过XIB制作表格单元。在添加此代码后,它抛出上述异常。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

    static NSString *CellIdentifier = @"MyCell";

    MyTableViewCell *cell = (MyTableViewCell*) [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {

        NSArray *arrayCellXib = [[NSBundle mainBundle] loadNibNamed:@"MyTableViewCell" 
                                                              owner:self 
                                                            options:nil];

....
} 
.....

return cell;
}

如何解决它?


你的buttonOfFirstView是什么? - iOS Developer
表格单元格内的按钮 IBOutlet UIButton buttonOfFirstView; - gauravds
检查连接是否正确。 - iOS Developer
1
我解决了,将文件所有者更改为NSObject,问题已经解决。为什么我不知道。但是它运行得很好。 - gauravds
5个回答

49

请检查您XIB中outlets的引用,其中一个可能引用了一个不再存在的属性(buttonOfFirstView)


2

将文件所有者类别设置为NSObject并在XIB中将UITableViewCell类别设置为您的自定义类别,即可解决此问题。


1

这个问题与你的情况中的key buttonOfFirstView有关。如果它是一个按钮,那么可能在任何一个xib文件中连接错误。


我听不懂你的意思,请再解释一下。 - gauravds
如果它不起作用,只需重新命名您的按钮,并正确连接它。 - iOS Developer
不起作用,相同的异常。 - gauravds
你已经合成了你的按钮吗? - iOS Developer
你应该在你的表格视图中导入MyTableViewCell。 - iOS Developer
请参考以下链接:http://stackoverflow.com/questions/2242517/nsunknownkeyexception-exception-raised-applicaton-crashes - iOS Developer

0

退出iOS模拟器。确保您保存了项目,然后退出xCode并重新启动,一切都会正常。我这样做了,对我有用。前提是其他所有东西都正确连接。


0

你需要清理你的项目:前往产品 -> 清理

这对我有用


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接