我正在开发一款我在Xcode 4.6中用故事板创建的游戏。几个星期前,我在Xcode5中打开它,它工作正常。我被要求升级故事板,它工作正常。它不是一个复杂的故事板,只有4个场景和所有标准的东西。今天我进去尝试再打开它,xcode挂起和沙滩球。我必须强制退出它并且我收到一份非常大的报告,我已将其保存在文本文件中,但在此处发布时间太长。
如何更具体地找出导致问题的原因,以便询问或谷歌寻找答案?
我尝试的事情: 我已禁用源代码管理 我无法选择故事板以便看到IB文档在版本中打开,因为它会挂起。
我认为这是崩溃报告的相关部分:
异常类型:EXC_CRASH(SIGABRT)异常代码: 0x0000000000000000,0x0000000000000000
特定应用信息:ProductBuildVersion:5A1413 在...中的失败失败 /SourceCache/IDEInterfaceBuilderCocoaTouch/IDEInterfaceBuilderCocoaTouch-3742/IBPlugin/Utilities/IBObjectMarshalling.m:670 详细信息:无法运行IBLayoutConstraint的一次性请求, IBUIButton,IBUILabel,IBUITextField,IBUIView和 IBUIViewController。 Interface Builder遇到错误 与iOS模拟器通信。如果您选择提交崩溃 有关此问题的报告或雷达,请检查Console.app是否崩溃 报告“Interface Builder Cocoa Touch Tool”并包括他们的 崩溃报告中的内容。例外名称:操作不能 完成。 (IBMessageChannelErrorDomain错误1.)例外原因: (null)Exception backtrace:(null)异常信息:{ IBUnderlyingError =“Error Domain = IBMessageChannelErrorDomain Code = 1 \”操作无法完成。 (IBMessageChannelErrorDomain错误1。)\“”;功能:无效 IBAssertMarshallingFailure(NSString * _ strong,NSString * _strong) 线程:{name =(null),num = 1}提示:
无
答案 0 :(得分:0)
嗯,这就是我的所作所为。
我从Finder打开了Storyboard文件,在TextEdit中,看到了Autolayout属性并决定将其设置为NO
。我这样做是因为我记得浏览崩溃报告,看到有关约束的内容。
然后我从Finder打开了Storyboard,但这次是在Xcode5中。它打开了故事板场景,但所有场景都是空白的。意思是我看不到原来那里的任何控件。我认为这是因为删除了autolayout。所以我将键useAutolayout="YES"
重新添加到TextEdit中的xml中。然后我再次在Xcode5中打开了Storyboard文件,它仍然是空白的。
然后我决定也许我需要在XCode5中打开整个项目,看看控件是否还在那里。我做了,但我仍然没有看到控件,但在场景导航器中我可以扩展节点,那些控件似乎在那里。
最后,我单独解决了每个AL问题,现在故事板项目重新出现。
答案 1 :(得分:0)
您可能必须在故事板中手动禁用自动布局。右键单击故事板 - >打开为 - >源代码。找到useAutolayout =“YES”并将其更改为useAutolayout =“NO”。
这可能仅适用于Mavericks OS和XCode 5.0.2。 XCode 5.0.2有几个“偶尔挂起”错误修复。