我有一个包含两个目标的项目,比方说 appA 和 appB 。
两个目标共享代码主视图控制器(appViewController)除了.xib 文件。
对于一个目标,我也有两组png 。
我的文件/项目结构如下:
*common* (members of both targets):
appViewController.h
appViewController.m
*appA* (members of target appA):
appViewController.xib
set of png files
*appB* (members of target appB):
appViewController.xib
set of png files
两个集合中的PNG具有相同的名称,但它们放在单独的文件夹/组中,一个组是一个目标的成员,另一个是另一个目标(与appViewController.xib相同)
一切正常,除非我尝试在IB中编辑.xib文件 - 它看起来如此 混淆并显示部分来自一个目标的图像,部分来自另一个目标。
由于.xib有点复杂(> 40张图像),因此编辑部分错误的图像 几乎不可能 - 图像必须正确放置在一张背景图像上(appA和appB的背景图像也不同)。
问题仅在编辑时存在(在IB中)。编译后的所有图像 两个目标都是正确的。
我发现了一个快速&肮脏的解决方案。在我开始编辑一个.xib之前 我删除对另一组png的引用。这样IB显示正确的图像 对于.xib我正在编辑。我只是导入所有引用(另一个引用) 我已经完成了。
我发现similiar question没有得到真正的答案。
我想知道,有人有更清洁的解决方案吗?必须有更好的方法来做到这一点。
答案 0 :(得分:6)
到目前为止没有答案......
让我回答我自己的问题(仍然希望得到更好的答案)。
如果要编辑一个目标的.xib,则删除引用 其他目标的资源(pngs)。
然后你退出xcode并再次打开你的项目。 pngs将是 正确的(因为xcode不能引用错误的引用) 目前)。
完成后 - 重新导入已删除的参考文献(请注意您 检查正确的“目标会员资格”。
编辑:这似乎是IB-XCode的一个已知问题。直到他们解决它,我们只需要使用上面提到的解决方法。