链接故事板引用时的ibtool错误:文件" Info.plist"无法保存在文件夹* .storyboardc

时间:2015-08-08 15:00:32

标签: ios xcode storyboard ibtool

我正在使用Xcode 7.0 beta 4,最近将我的单个Main.storyboard拆分为一系列故事板引用连接的故事板(Xcode 7中新增了)。

构建时,我收到以下内容" Interface Builder Storyboard Linker Error":

/* com.apple.ibtool.errors */
: error: The file “Info.plist” couldn’t be saved in the folder “Pages.storyboardc”.
    Underlying Errors:
        Description: The operation couldn’t be completed. Not a directory
        Failure Reason: Not a directory

我怎样才能理解这个错误?


通过选择原始故事板中的场景并选择编辑器>来创建故事板参考。重构故事板...... 。我遇到的上一个问题是故事板链接器抛出了不同类型的错误:

/* com.apple.ibtool.errors */
: error: Deploying Storyboard References to iOS 8.0 requires that your storyboards do not
         share any view controller identifiers. Browser.storyboard and Pages.storyboard
         both contain a view controller with identifier "PagesViewController".

事实证明,使用" Refactor to Storyboard ..."命令已根据重构的视图控制器标识符之一自动为故事板引用分配了故事板ID。这导致了错误描述的情况(具有与视图控制器场景的标识符相同的标识符的故事板引用)。我删除了这些标识符,因为我认为您不需要从代码中引用故事板参考。

更新

我也看到这个问题表现为一个稍微不同的错误:

/* com.apple.ibtool.errors */
: error: “<StoryboardReferenceID>.nib” couldn’t be removed.
    Underlying Errors:
        Description: The operation couldn’t be completed. Not a directory
        Failure Reason: Not a directory

1 个答案:

答案 0 :(得分:3)

我发现了一种在写这个问题时摆脱错误的方法。但是,我无法说明我的意思是什么,所以任何额外的见解都会受到欢迎。

我重新添加了我删除的故事板ID,以避免以前与视图控制器共享相同标识符的错误,但确保没有两个是相同的。错误不再显示。

我不知道故事板标识符对故事板引用的含义是什么,但似乎链接器希望它们有一个!如果需要标识符(比如由于缺少标识符而无法访问场景),我本来期望编译器警告/错误而不是链接器错误,所以我当前认为这是一个链接器错误,可能是在Xcode 7的最终版本中解决了这个问题。