具有单独.xib的两个目标(具有相同名称的图像资源)

时间:2012-01-16 10:03:20

标签: iphone ios xcode xcode4 interface-builder

我有一个包含两个目标的项目,比方说 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没有得到真正的答案。

我想知道,有人有更清洁的解决方案吗?必须有更好的方法来做到这一点。

1 个答案:

答案 0 :(得分:6)

到目前为止没有答案......

让我回答我自己的问题(仍然希望得到更好的答案)。

如果要编辑一个目标的.xib,则删除引用 其他目标的资源(pngs)。

然后你退出xcode并再次打开你的项目。 pngs将是 正确的(因为xcode不能引用错误的引用) 目前)。

完成后 - 重新导入已删除的参考文献(请注意您 检查正确的“目标会员资格”。

编辑:这似乎是IB-XCode的一个已知问题。直到他们解决它,我们只需要使用上面提到的解决方法。