无法使用Xcode 6打开Storyboard

时间:2014-09-09 22:53:39

标签: storyboard xcode6

我有一个包含2个Xcode 5.1内置故事板的项目。 当我在Xcode 6中打开其中任何一个时,我收到此错误。他们从未在任何测试版中打开过,所以我不认为这是Xcode的错误。 最后在Xcode 6 GM中尝试过。

  

文件" Main_iPhone.storyboard"不能打开。该操作无法完成。 (com.apple.InterfaceBuilder错误-1。)

日志说:

ibtoold[1880:1335652] Exception raised while unarchiving document objects - -[NSTaggedPointerString getCharacters:range:]: Range {0, 10} out of bounds; string length 9
    Recovery Suggestion: Check the console log for additional information.

3 个答案:

答案 0 :(得分:6)

使用.png格式清除某些UIImageViews的Image属性时使其工作。我担心,在一天结束时,它是Xcode 6中的一个错误。希望这个问题可以帮助某人。

答案 1 :(得分:1)

此问题并非仅适用于StoryBoards。打开包含PNG图像的常规UIViewController时,我遇到了同样的错误。

我在文本编辑器中编辑了XIB,以删除按钮上的PNG图像。然后我可以在Xcode中打开XIB。

答案 2 :(得分:0)

更新:

如上所述over here (Xamarin forum)

选项1:管理代码中的所有UIImageView.Image属性

您可以在视图控制器中的一个视图生命周期覆盖方法中设置属性(例如,在ViewDidLoad()中),而不是在storyboard或.xib文件中设置UIImageView的Image属性。有关使用UIImage.FromBundle()与UIImage.FromFile()的提示,另请参阅http://developer.xamarin.com/guides/ios/application_fundamentals/working_with_images/

选项2:将所有图片资源移至顶级资源文件夹

完成此更改后,您需要更新storyboard和.xib文件以使用新的顶级图像路径。

选项3:为任何有问题的图像资源设置LogicalName,以便将它们复制到.app包的顶层

对于上面的示例,.csproj文件默认包含以下条目:

您可以更改此元素并添加LogicalName,以便将图像复制到.app包的顶层:

    image.png


旧答案

Xamarin论坛的人回答说:

https://forums.xamarin.com/discussion/26272/yosemite-failed-to-compile-interface-file-xamarin-ios-8-2-xcode-6-1

RobertDebault说:

  

如果在图像界面控件中有路径语句,那么它   将失败。您需要删除所有图像路径语句并将其删除   您资源文件夹中的图像。很糟糕,苹果已经说过了   这是应该从现在开始的方式。

看来Apple要求开发人员从现在开始将图像存储在Resources文件夹中......