我的应用程序至少使用Xcode5.1故事板支持iOS6。
在Xcode 6 GM中完成了几项工作之后,我需要在iOS 6 Simulator上进行测试。Xcode 6 GM没有iOS 6 Simulator,因此,我在Xcode 5.1中打开了我的项目。
但是它无法建立。我什至无法在Xcode5.1中打开情节提要。
在导航窗格中,它说
Main_iPhone.storboard
Interface Builder Storyboard Compiler Error
The document"(null)" requires Xcode6.0 or later.
当我单击它时,出现提示
The document "Main_iPhone.storyboard" requires Xcode 6.0 or later.
This version does not support constraints to layout margins. Open this document with Xcode 6.0 or later.
在Xcode 6中添加几乎任何类型的布局约束都会使情节提要(或.xib文件)与Xcode 5.1不兼容。如果您需要在Xcode 5.1中使用已经用Xcode 6.0修改过的情节提要,则有必要删除所有基于“边距”的约束。
执行以下步骤以使由Xcode 6修改的情节提要加载并使用Xcode 5再次编译:
使用Xcode 6:
在情节提要文件检查器的“界面生成器”文档部分中,将“打开位置”设置为Xcode 5.1 。设置此选项后,如果存在不兼容的边距约束,则Xcode 6.0将生成警告。
识别边距约束的一种简单方法是在文本编辑器中打开情节提要(最好是一种在磁盘上更改文件时自动刷新的情节提要)。搜索单词“ Margin”,然后查找像这样的行:
<constraint firstItem="gZc-ET-UKM" firstAttribute="leading" secondItem="MMQ-IT-qOo" secondAttribute="leadingMargin" constant="-8" id="H3i-wo-2Mm"/>
这些约束需要删除或更新为直接基于超级视图而不是边距。可以更新约束而不是删除约束,方法是在大纲视图中选择约束,然后转到“大小”检查器,然后取消选中“第一项”或“第二项”设置的下拉菜单中的“相对于边距”选项。完成此操作后,还需要添加一个与边距匹配的常数(通常为8)。
删除或更新每个约束时,您应该在文本编辑器更新中看到情节提要文件,并删除单词“ Margin”。删除所有不兼容的约束后,警告将消失,此行将从情节提要文件中消失:
<capability name="Constraints to layout margins" minToolsVersion="6.0"/>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句