【问题标题】:Exception on outlet connections in Xcode 4Xcode 4 中的插座连接异常
【发布时间】:2011-08-01 10:33:48
【问题描述】:

我在 Xcode 4 中创建了一个新的 iPhone 项目,并从一个在 Xcode 3 中创建的旧项目中添加了一些文件(xib 和类),该项目运行良好。

项目编译良好,没有错误或警告。但是,当我尝试运行它时,我得到了臭名昭著的 “NSUnknownKeyException 原因:类与键 dateOutlet 的键值编码不兼容”错误。

当我打开 XIB 文件时,与 dateOutlet 的连接似乎很好,但为了安全起见,我还是删除并重新连接了。下次我运行它时,我遇到了同样的错误,但在另一个插座上,这让我认为连接出了问题,我只需要重新连接它们。但是,我注意到有时当我重新连接一个插座时,它会在我已经“修复”的插座上失败。经过一番摆弄后,我得出结论,重新连接并没有真正解决任何问题,只是当我对 xib 进行更改时,会随机选择下一个失败的插座(或者至少看起来如此)。

有人遇到过这个问题吗?我用谷歌搜索了很多,但似乎没有人遇到过这种确切的行为。我现在尝试在 3 台不同的机器上运行该项目,结果相同。

【问题讨论】:

  • 逐步执行您的 init 方法并找到引发异常的确切行。只需在此处发布代码...这是找到解决方案的最简单方法。
  • 当它从int retVal = UIApplicationMain(argc, argv, nil, nil); 方法的int retVal = UIApplicationMain(argc, argv, nil, nil); 行中的笔尖加载时发生。

标签: iphone xcode xcode4 xib iboutlet


【解决方案1】:

对象的class属性应该在xib文件中正确设置,

例如,如果您将 uiimageview 的 iboutlet 连接到 xib 中的 imageview 对象,请交叉检查 xib 中该对象的类属性(通过按 command+4 打开)是否设置为 UiImageview

【讨论】:

  • 你好拉贾特。很抱歉回复晚了,但是我们度过了一个难得的周末,天气很好,所以我没有做任何工作:) 不管怎样,我检查了所有的课程,它们都是正确的。正如我在问题中所说,xib 在另一个项目中工作得很好(在 Xcode 3 中);事实上,该应用甚至在 App Store 中。
【解决方案2】:

好的,我找到了问题的根源。似乎在应用程序的目标中,“主界面”设置为我的 MainView,它是 UIView 的一个实例。我将其更改为 MainWindow(由 Xcode 生成)并且一切正常。

【讨论】:

    猜你喜欢
    • 2011-03-21
    • 1970-01-01
    • 2018-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-19
    • 2014-08-15
    • 1970-01-01
    相关资源
    最近更新 更多