我有一个相当大而复杂的项目,其中包含多个 Storyboard,所有 Storyboard都以 2 种语言本地化。我有 4 个 Storyboard - 主 iPhone、主 iPad 和另外 2 个用于单独功能的 Storyboard。
这是我遇到的问题..
其中 2 个 Storyboard在项目中重复。当我设法以某种方式在运行时运行时,会选择其中一个 Storyboard。当我编辑 Storyboard时,我将不得不在两个文件中进行编辑。
复制 1
复制 2
另一个问题是我在项目目录中出现了困惑。我有 2 个本地化版本的资源副本。因此有 2 个 it.proj 文件夹,一个在项目的根文件夹中,一个在源文件夹中。
项目根目录下的it.proj文件夹
源代码文件夹 AgentAssist 中的 Storyboard
更多本地化资源
这些引起的问题是不寻常的。有时只是运行良好,有时我得到不同的错误。一个是
编译失败。无法写入路径:/User.....Underlying Err 描述:文件“CMAStoryboard_iPad.storyboardc”无法保存在文件夹“Base.lproj”中,因为已经有同名文件失败原因:文件名称为“CMAStoryboard_iPad.storyboardc”已经恢复建议:要保存文件,请提供不同的名称,或者移到一边或删除现有文件,然后 tr 底层描述:操作无法完成。失败原因:说明:“CMAStoryboard_iPad.storyboardc”无法删除,因为您没有 ac 权限失败原因:您没有每个恢复建议:要查看或更改权限,请在 Finder 中选择该项目并选择文件 > G 底层描述:操作无法完成。 Directo失败原因irecto....
另一个替代错误是复制 .strings 文件错误。
错误:删除失败...../Xcode/DerivedData/AgentAssist-bgxpswehldjaxchamdipxdcfafbf/Build/Products/Debug-iphoneos/AgentAssist.app/it.lproj/CMAStoryboard.strings:“CMAStoryboard.strings”无法删除。
然后有时在清理、删除派生数据文件夹甚至什么都不做之后,它只是运行。
非常感谢您的帮助,因为我无法解决此问题,也无法继续处理该项目。
谢谢
Best Answer-推荐答案 strong>
对于每个 Storyboard文件名(或者实际上是 Xcode 中的任何资源),您应该只有一个具有该文件名的源文档。具有相同名称的资源都映射到同一个输出文件,您会看到这种未定义行为的结果以各种方式解决。
如果你有这个:
ProjectRoot/Base.lproj/MyStoryboard.storybaord
ProjectRoot/Folder/Folder/Base.lproj/MyStoryboard.storybaord
然后这两个文档映射到同一个输出文件。
您需要删除 ProjectRoot/Base.lproj 中的一个或 ProjectRoot/Folder/Folder/Base.lproj 中的一个,但不要保留两个文档。
关于iphone - Xcode 项目目录中出现重复的 Storyboard 文件。勉强能跑项目,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/17163370/
|