我试图将UILabel与在类中创建的IBOutlet链接起来。
我的应用程序崩溃与以下错误。
这是什么意思?
我该怎么解决呢?
***终止应用由于未捕获异常'NSUnknownKeyException',原因:'[<UIViewController 0x6e36ae0> setValue:forUndefinedKey:]:这个类不是键值编码兼容的键XXX。'
我试图将UILabel与在类中创建的IBOutlet链接起来。
我的应用程序崩溃与以下错误。
这是什么意思?
我该怎么解决呢?
***终止应用由于未捕获异常'NSUnknownKeyException',原因:'[<UIViewController 0x6e36ae0> setValue:forUndefinedKey:]:这个类不是键值编码兼容的键XXX。'
当前回答
我通过两件事解决了这个问题:
视图的固定类引用:
重新进口所有Outlets:
其他回答
您可能需要删除出口,通过从IB绘制到. h文件来重新创建它。
另一个棘手的例子:
在IB中,将ViewController添加到storyboard,删除它的视图,并将自定义类设置为“MyViewController”,以便从MyViewController.xib实例化视图
将Storyboard ID指定为相同的“MyViewController”会导致异常。
将故事板ID更改为其他名称可以解决该问题。
NSUnknownKeyException error
'NSUnknownKeyException', reason: this class is not key value coding-compliant for the key
我得到这个错误时。xib文件(例如。TableViewCell.xib)具有与单元格类相同的名称(例如。TableViewCell.swift)
正确的做法是:
TableViewCell.swift -> View.swift <-> View.xib
通过在Storyboard/xib接口中选择有问题的对象并打开连接检查器(视图->Utilities->显示连接检查器)来检查是否有丢失的引用出口。如果您确实删除了不需要的连接,您应该可以继续。
您只需要指定IBOutlet一次,IBOutlet标签您的ivar是不必要的。 你在用你的UIViewController实例化你的NIB吗?在某些时候,你应该调用[SecondView initWithNibName:@"yourNibName" bundle:nil];