我该如何修复NSInvalidUnarchiveOperationException

时间:2012-06-18 15:18:48

标签: ios xcode exception ios5 xcode4.3

*由于未捕获的异常'NSInvalidUnarchiveOperationException'而终止应用程序,原因:'* - [NSKeyedUnarchiver decodeObjectForKey:]:无法解码类的对象(NSLayoutConstraint)'

我有一个非常简单的应用

一个视图有一个按钮

I Control单击并将按钮拖动到第二个视图并选择MODAL

当我在模拟器中运行它时,一切正常

当我在运行iOS 5.1.1的iPad上运行时,它会因上述错误而崩溃。我不知道为什么,也没有代码。

2 个答案:

答案 0 :(得分:79)

这是因为您正在使用默认情况下使用“自动布局”的Xcode 4.5(或之前的测试版)。自动布局仅适用于iOS 6,因此您将在之前的iOS版本中收到运行时错误。

您可以通过打开故事板,打开“工具”窗格并禁用第一个标签/部分中的“使用Autolayout”复选框来解决此问题:

enter image description here

对于常规非故事板笔尖,请选择顶级视图以访问此选项。

答案 1 :(得分:5)

在你的Xib->身份和类型 - > Interface Builder文档 - >取消选中useAutoLayout复选框,这是Ios6的新功能