ios - class is not-key value coding compliant error 但 Storyboard 中的一切都是正确的

标签 ios xcode

我从 xib 加载 View 时遇到键值编码兼容错误。 当然,我过去多次遇到此错误,并且知道这意味着 socket 连接无效或丢失。然而,在这种情况下我根本看不出有什么问题,并且已删除并重新连接所有内容,但错误不会消失。

在这里我们可以看到文件的所有者是 TCUsageAlertView 类型,并且有三个导出: enter image description here

enter image description here

enter image description here

在这里他们连接到所有者

enter image description here

我们可以看到 TCUsageAlertView 确实是一个 UIView:

@interface TCUsageAlertView : UIView
{
….

这是加载 View 的地方:

TCUsageAlertView *dialog = (TCUsageAlertView *)[[[NSBundle mainBundle] loadNibNamed:@"UsageAlertDialog" owner:self options:nil] objectAtIndex:0];

xib 中只有一个 View ,因此 objectAtIndex:0 就可以了。

如果我删除连接检查器中的 socket ,则该类将加载,如果我将它们放回去,则该类将失败。有什么问题吗?

最佳答案

文件所有者是您传递给 loadNibNamed 的任何内容...在这种情况下,它是加载 View 的任何类的实例,而不是 TCUsageAlertView 的实例。

外层 View 应更改为 TCUsageAlertView 类,然后应从该 View 到 subview 建立连接。

关于ios - class is not-key value coding compliant error 但 Storyboard 中的一切都是正确的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22364055/

相关文章:

xcode - IBDesignable...添加自定义操作?

iphone - 播放声音循环时如何避免用户输入

swift - Xcode 8.1 因特征而变化时变慢

ios - 为什么在设置imageView之前将 "translatesAutoresizingMaskIntoConstraints"设置为false,会显示无图像?

ios - Ionic OSX 入门的问题

iphone - 转至另一个带有标签连接崩溃的 View Controller

ios - 将图像从 JSON 存储到自定义类 iOS

ios - ARKit ARSession 有时在应用程序后台运行之前不会暂停

ios - 当 UITextField 或 UITextView 开始编辑时得到通知

ios - 多个 tableView reloadData()