文件Main.storyboard需要Xcode 8.0或更高版本


94

我下载了Xcode beta,并打开了现有项目,以了解它如何与Xcode 8 beta一起工作(我从Xcode 8中打开了Storyboard文件)。

现在,当我从Xcode 7.3打开项目时,无法打开情节提要文件,它给了我以下错误

此版本不支持以Xcode 8格式保存的文档。使用Xcode 8.0或更高版本打开此文档。

Xcode 7错误 当我想继续使用Xcode 7时,应该做些什么来恢复原状。

在Xcode 8中,系统提示我选择设备,然后选择了iPhone 6S,我认为这部分原因是导致故事板文件无法在Xcode 7中打开


7
还原版本控制中的更改
2016年

1
@Wain是的,这始终是一个选择,但是我有一些未提交的更改,并且还想知道解决方案(如果不费时的话)
Bhumit Mehta

Answers:


212

我已经弄清楚了:

在Xcode 8中打开您的Storyboard。

单击文件检查器。

在“ Interface Builder文档”部分中,选择“在Xcode 7.x中打开”而不是“最新Xcode(8.0)”,如以下屏幕截图所示:

在此处输入图片说明

执行此操作时,您将收到一条警告,提示“保存Xcode 7.x将关闭您的文档,并且Xcode 8.0功能的数据将被删除。”

单击“保存并关闭”,您将能够在Xode 7.x中打开情节提要。


我很难使更改保持不变,但是我所做的就是更改它,然后保存并关闭,这时它实际上并没有保存,因为它仍然是灰色的,然后我使用了Xcode(挂起了),然后强制退出了它,现在故事板正在使用Xcode 7 phew!
malhal 2016年

@Bhumit Mehta当我为iPad和iPhone使用2个不同的故事板时,它不起作用。更改仅保存其中之一。请告诉我任何解决方法。
火星

@mars:您只需要对两个情节提要板重复相同的步骤,我在一个测试项目中对其进行了尝试,并且它起作用了。
布米特·梅塔

2
Interface Builder文档在哪里?
natecraft1's

10
但是,如果您再次使用xCode 8打开项目并进入情节提要-您将使情节提要文件再次陷入混乱,并且您将不得不再次切换回7.x-并再次“保存并保存”
Massmaker

67

我有一个解决方案:

  1. 以“源代码”的形式打开情节提要(右键单击情节提要->以-的形式打开->源代码)。
  2. 删除此行:

<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
  1. 删除所有正在使用的情节提要。
  2. 运行应用程序。

13
完成上述步骤后,在打开故事板时,界面生成器Xcode崩溃了!
Elangovan '16

3
可能已经在XCode 8 Beta中起作用。但是在XCode 8版本中,这样做会使XCode崩溃。
GeneCode

现在无法正常工作,仍然会出错,并且在情节
提要

接受的答案听起来比删除一行更安全
kiedysktos 16-10-24

用不同的数字替换代码对我不起作用。仅删除代码行可修复错误。仅当您已经拥有Xcode8时,可接受的答案才起作用。
jinglei

27

对我有用

右键,单击main.stoaryboard。转到以->源代码打开并更改依赖项

更改

 <capability name="documents saved in the Xcode 8 format"
     minToolsVersion="8.0"/>  to

   <capability name="documents saved in the Xcode 7 format"
     minToolsVersion="7.0"/>

在launchscreen.stoaryboard上执行相同的步骤


2
如果您没有Xcode 8.0,这是迄今为止最好的解决方案
Kampai

2
感谢您的解决方案。从Xcode 9转换为Xcode 8后,发生了同样的问题。我将“ <功能名称=“安全区域布局指南” minToolsVersion =“ 9.0” />“更改为<功能名称=”安全区域布局指南“ minToolsVersion =” 8.0“ / >。进行此更改后,当您在“界面”构建器中打开情节提要时,此行将被删除。
阿米特(Amit)

10

从Xcode 9转换为Xcode 8后,发生了相同的问题。我用源代码打开情节提要,并进行了更改

"<capability name="Safe area layout guides" minToolsVersion="9.0"/>" 
to <capability name="Safe area layout guides" minToolsVersion="8.0"/>

进行此更改后,当您在“界面”构建器中打开情节提要时,此行将被删除。


您为我节省了一些工作时间,xcode提醒我发现并修复了一些奇怪的东西,因此修改后我的文件会没事吗?
brahimm

7

我也遇到了这个问题。我按照此方法进行了更改:因为无法单击菜单来选择7.0或更高版本,所以我用源代码打开main.storyboardlaunchscreen.storyboard,然后手动更改了版本,这解决了问题。


5
这是更改之前的行:<capability name =“以Xcode 8格式保存的文档” minToolsVersion =“ 8.0” />更改后:<capability name =“以Xcode 7格式保存的文档” minToolsVersion =“ 7.0” />
Dani.Rangelov '16

XCode 8.0发行版(非beta版)显示minToolsVersion =“ 6.0”
GeneCode 2016年

4

由于XCode 8每次打开时都会不断将情节提要文件转换为XCode 8格式(这是一个旧项目,所有内容都弄乱了),因此我最终下载了XCode 7并仅将其用于编辑情节提要文件(并在我关闭之前将其关闭)切换回XCode 8)。如果我意外地在8中打开情节提要板文件,则由于该项目位于GIT上,因此只需将该文件重置为上一次提交。

我知道这很愚蠢,但可以。


3
<dependencies>
    <deployment identifier="iOS"/>
    <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="9049"/>
    <capability name="Constraints to layout margins" minToolsVersion="6.0"/>
</dependencies>

将您的依赖项替换为该依赖项


0

以打开的情节提要Source Code并搜索minToolsVersion键。将该值设置为7.0并在Xcode 7.x中打开该故事板


0

由于@Bhumit_Metha直接给出了解决方案。不幸的是,在我的情况下,我没有使用最新Xcode(8.0+)版本的MAC进行这些更改,以支持旧的xcode(7.x)中的新“ xib”文件。

因此,我最终得到了一个可行的解决方案,其步骤如下:

[1]在xcode 7.x中创建一个空的xib文件。

[2]右键单击空白的xib以查看源代码并将其全部复制。

[3]现在,在源代码查看器中打开新的xib(一个版本错误)。将先前的代码粘贴到顶部。

[4]将所有旧行替换为新的内部标签: <objects> ...... </objects>

就这样。将与xcode 7.x兼容!

提示:下次在新的xcode中打开时,请确保选择兼容模式。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.