无法在 xCode 6 或更高版本中打开故事板或 xib 文件

Posted

技术标签:

【中文标题】无法在 xCode 6 或更高版本中打开故事板或 xib 文件【英文标题】:Can't open storyboard or xib files in xCode 6 or more 【发布时间】:2014-11-01 07:54:56 【问题描述】:

每次我尝试在新的 xCode 6 或 6.1 和 Yosemite 上打开故事板和 xib 文件时。当我的同事可以在 Maverick 上的 xCode 6 中打开它时,就会发生这种情况。我反复收到以下错误:

无法打开文档“MainStoryboard.storyboard”。操作无法完成。 (com.apple.InterfaceBuilder 错误 -1。)

我仍然可以在 Yosemite 的 xCode 5 上打开它。我也试过这个方法:

在文本编辑器中打开 xib 文件并删除所有 ImageViews 的 ImageName 具有 .png 格式的属性;它有助于打开其中的一些,但不是全部!

情况很糟糕,我被困住了!

此信息由控制台提供:

取消归档文档对象时引发异常 - -[NSTaggedPointerString getCharacters:range:]: Range 0, 10 out of bounds;字符串长度 4

问题是什么,我该如何解决?

【问题讨论】:

The document "Main.storyboard" could not be be opened的可能重复 【参考方案1】:

问题出在我在 UIImageViews 中使用的一些图像的名称上。

我在文本编辑器中打开 xib 文件并找到所有这些模式“X/Y.png”。 我将其替换为“Y.png”。

这解决了我的问题!

【讨论】:

我在[project_root]/Images/myProfilePic.png 中有一张图片,我删除了它,并在代码中设置了它,它解决了我的问题,谢谢@amir Abbas Kashani【参考方案2】:

在执行此操作之前备份项目,但是:

    到终端 通过输入 xcode-select -p 确认开发者工具设置正确 (应该是 /Applications/Xcode.app/Contents/Developer)

如果不是,它应该指向 Xcode 所在的位置,即 /Applications/MyDeveloperTools/Xcode.app/Contacts/Developer

你可以通过运行来改变它:

 xcode-select -s /path/to/the/folder/where/xcode/is/Xcode.app/Contents/Developer

如果没问题的话。

    下车到航站楼(如果你还在的话,就留在那儿 导航到您的项目文件夹(Xib 所在的位置)n.b.重要的是上述步骤也正确! 运行ibtool --upgrade myNonWorkingXibOnXode6.xib

从这里开始,Xib 应该可以正常工作了。

另一个注意事项是“已编译的 nib 将无法再通过它工作”

【讨论】:

感谢阿德里安,但以上都不起作用。开发者工具设置正确,而 ibtool 没有做任何事情。 这给了我额外的信息,我添加到问题中。 在 Xcode 5 机器上尝试 ibtool --upgrade 看看是否可以清理它。这基本上意味着 XML 没有确认 Xcode 6 的要求。不过,当我从 5 转到 6 时,我个人从未有过这种情况...... 他们实际上在同一台机器上【参考方案3】:

第一次在 Xcode 6 中打开情节提要时遇到了一些类似的错误。

对我来说,一个解决方案是使用您选择的文本编辑器打开情节提要并手动将自动布局设置为 false:useAutolayout="NO"。这种方法的问题是你会失去所有的布局约束。

另一个对我来说效果更好的选择是安装/使用 Xcode 5.1,打开情节提要,然后在 Interface Builder 文档部分的 File Inspector 中更新 Opens in 选项以使用默认 (5.1),然后在 Xcode 6 中再次打开情节提要。

【讨论】:

以上是关于无法在 xCode 6 或更高版本中打开故事板或 xib 文件的主要内容,如果未能解决你的问题,请参考以下文章

Xcode Project 因 macOS 11.0 或更高版本的要求而引发错误

此版本的 Android Studio 无法打开此项目,请使用 Android Studio 4.0 或更高版本重试

无法卸载 MySQL Connector/Net 6.3 或更高版本

如何在 xCode 4 或更高版本中添加或连接两个项目,例如一个项目

如何在棒棒糖或更高版本中打开位置并获取当前位置

无法解决“此版本的 IntelliJ IDEA 的 Android 支持插件无法打开此项目,请使用 4.1 或更高版本重试。”