Xcode 4:多个目标、多个资源文件夹,具有相同名称的图像以与共享Xib一起使用?
我制作了一个具有特定功能和特定图形外观的应用程序 例如,从Xib文件加载自定义tableview单元格,并将UIImageView作为背景图像,从resources组加载粉色图像(“customcell.png”) 现在,我复制了原始目标,创建了应用程序的蓝色版本。 此外,新目标正在使用其自己的Info.plist文件及其自己的包标识符 我希望Xib文件中的UIImageView使用相同的文件名(“customcell.png”),但如果构建了蓝色目标,则使用蓝色版本的customcell.png 我知道在一个项目中不能有同名的文件,即使你把它放在一个组中(黄色文件夹),因为那只是一个逻辑文件夹 因此,我创建了两个蓝色文件夹(分别称为“蓝色”和“粉色”),每个文件夹都与正确的目标关联。 我在“蓝色”文件夹中放了一个蓝色版本的“customcell.png”,在“粉色”文件夹中放了一个粉色版本的“customcell.png” 我已经从项目中删除了原始的“customcell.png”,只剩下新文件夹中的2个副本 在Interface Builder中,UIImageView变为空白(因为我删除了原始图像文件),所以我再次从下拉列表中选择了“customcell.png”。 它只显示了1个同名文件(不是2个),是蓝色文件(不知道为什么) 但是,当我构建到任何目标时,我会得到一个空的UIImageView和一个警告: 无法加载从捆绑包中标识符为“com.myapp.blueversion”的nib引用的“customcell.png”图像 (或pinkversion) 所以,基本上我的问题是, 如何使用与不同目标关联的同名不同图像,Xcode 4:多个目标、多个资源文件夹,具有相同名称的图像以与共享Xib一起使用?,xcode,resources,xcode4,uiimageview,target,Xcode,Resources,Xcode4,Uiimageview,Target,我制作了一个具有特定功能和特定图形外观的应用程序 例如,从Xib文件加载自定义tableview单元格,并将UIImageView作为背景图像,从resources组加载粉色图像(“customcell.png”) 现在,我复制了原始目标,创建了应用程序的蓝色版本。 此外,新目标正在使用其自己的Info.plist文件及其自己的包标识符 我希望Xib文件中的UIImageView使用相同的文件名(“customcell.png”),但如果构建了蓝色目标,则使用蓝色版本的customcell.pn
但是有1个Xib文件可以正确加载它们吗?我对蓝色文件夹有问题,我不确定它们应该如何工作 我对我的应用程序的免费版和付费版使用不同的目标,这就是我分离不同图标文件的方式(很麻烦,因为它们必须有特定的名称) 我的文件系统如下所示: 资源 我同意 Icon.png Icon@2x.png 等等 无图标 Icon.png 等等
然后我将IconsPaid和IConFree文件夹拖到XCode,并将内容分配给相关目标您可以尝试.xib的两个副本,每个副本都是不同目标的成员。 .m和.h都可以是这两个目标的成员,如果您愿意的话(因此只有.xib是重复的)
我刚刚发布了一个可能对您有所帮助的消息。您遇到的问题是,您试图将蓝色文件夹当作普通文件系统文件夹来使用。蓝色文件夹实际上只是IDE中组织的文件组,并不表示“隐藏”的文件夹层次结构 看看它是如何工作的,在Finder中右键单击一些图像查看它们,您会注意到,默认情况下,两个不同的blue group文件夹中的文件实际上位于同一目录中 如何使用一个xib引用多个目标的相同命名图像:
当您在Xcode中查看xib时,它将始终显示图像的一个版本,但当您运行应用程序时,它将是正确的。我也遇到了同样的问题。
通过重命名包含我希望显示的目标图像的文件夹,我成功地从一个目标传递到另一个目标,使其成为按字母顺序排列的第一个文件夹。您是否记得将它们分配给不同的目标?是的(我在创建时分配了蓝色文件夹。我似乎无法分配其中的单个文件)。。。看起来,IB无法真正访问那些蓝色文件夹。我设法在CustomeCell类中使用#IFDEF,指向相应的蓝色文件夹,但这意味着需要很多这样的#IFDEF,我希望通过IB来实现,而不是添加很多IFs。。。如果有人知道一种方法,我们将不胜感激。谢谢