从Xcode 6到Xcode 5的故事板的向后兼容性+;在Xcode 6中支持iOS 7
在我的项目在Xcode 6下做了一些更改后,我无法从Xcode 5打开从Xcode 6到Xcode 5的故事板的向后兼容性+;在Xcode 6中支持iOS 7,xcode,storyboard,xcode5,xcode6,xcode-storyboard,Xcode,Storyboard,Xcode5,Xcode6,Xcode Storyboard,在我的项目在Xcode 6下做了一些更改后,我无法从Xcode 5打开情节提要文件(和构建项目)。 由于无法从Xcode 6将应用程序分发到AppStore,而它处于测试阶段,所以我必须在Xcode 5下构建应用程序 有没有办法使情节提要向后兼容Xcode 5? 我在序列图像板文件的标题中发现以下字符串: <capability name="Constraints with attributes relative to the layout margin" minToo
情节提要文件(和构建项目)。
由于无法从Xcode 6将应用程序分发到AppStore,而它处于测试阶段,所以我必须在Xcode 5下构建应用程序
有没有办法使情节提要向后兼容Xcode 5?
我在序列图像板文件的标题中发现以下字符串:
<capability name="Constraints with attributes relative to the layout margin" minToolsVersion="6.0"/>
我想,它需要删除或编辑一些新的密钥,新的Xcode6使用这些密钥,但无法检测到是哪一个
(不太可能恢复提交,因为有很多更改。)
UPD:
还有另一个问题,出现在Xcode 6中-它添加了基线约束,这在iOS 7中不可用,并且会导致崩溃。(Xcode甚至不总是突出显示此警告!)-要解决此问题,请参阅我的答案,如何删除
基线属性。在编辑器中打开情节提要。右键单击>在编辑器中打开。复制您的ui xml,省去可以在其中找到版本和情节提要id的标题
接下来,将xml内容粘贴到xcode 5情节提要文件中。万岁!我修好了!希望它对其他人有用:
我使用regex查找所有伪字符串(支持Sublime 2的regex版本)
在收藏夹文本编辑器中打开stroyboard文件
使用regex(\w)Margin“
按模式替换所有引用:\1“
从文件中删除
按模式查找并从情节提要文件中删除所有字符串:*“基线”。*\n
修复不对齐:在Xcode 5中打开文件,并更新所有视图的约束
就这样<强>利润强>
UPD:
我发现“基线”约束也会导致崩溃,但Xcode没有显示任何关于这些约束的警告
要修复它,请按模式从脚本文件中删除所有字符串:*“基线”。*\n
这与版本数字无关。它使用不同的键,xcode 5不知道。所以,如果你想这么做,很明显你会崩溃!伟大的解决方案!但愿我能给你+10而不是+1@S1LentWarrier谢谢,另外,可能还有另一个与baseline
属性的冲突,这在iOS 7中也不可用,但Xcode会在一段时间内自动添加它!我会很快更新答案!