Xcode - 使用两个 xcassets 我将如何覆盖

Xcode -using two xcassets how would i override

让我解释一下我想在 xCode 中构建的架构。这是我在项目结构中创建的 xcassets 的照片:

从图中可以看出我创建了两个xcassets文件夹。第一个名为 images.xcassets 的主机包含我的 targets.Its 成员在 target1 和 target2 中共有的所有图像。这个 xcassets sheet 充满了我从 fork 继承的许多图像。

另一方面,images-override.xcassets 文件夹是我想放置两个目标不通用的​​任何图像的地方。所以这个目录的目标成员应该只是 target2。

我想要完成的事情: 这样做,如果我尝试检索名为 myImage.png 的图像,它应该首先检查 images-override 以查看是否有任何图像被覆盖,如果在那里没有找到它应该检查 images.xcassets图片。

所以我的问题是图像的搜索顺序。我希望项目首先检查 images-overriden.xcassets sheet 然后检查(如有必要)images.xcassets 文件夹。有什么想法吗?

一般来说,您不能在 Xcode 中包含多个同名资产。为了您的目的,我推荐一个命名约定:

filename.png filename-override.png

例如。加载图像时,首先检查 filename-override.png 是否存在,如果存在则加载它。如果没有,加载filename.png.