通过其组区分资产目录中的图像

时间:2015-01-21 20:55:59

标签: xcode asset-catalog

有没有办法使用资产目录组来有效命名具有共享名称的多个图像?

例如,如果我有多个名为Foo的图像位于不同的组中,是否可以使用imageNamed:指定我想要的图像(例如UIImage(named:"Group1.Foo")之类的内容)

显然,我可以自己为所有图像创建唯一的名称,但如果有一种方法可以利用群组为我做这件事,那就太好了。

2 个答案:

答案 0 :(得分:8)

选择资产目录中您要为其添加命名空间的每个文件夹。转到文件夹属性并选择名称"提供命名空间"。这应该正确设置最终资产目录的子目录。

您可以通过编辑每个文件夹的Contents.json手动执行此操作。您可以使用正确的格式添加以下内容。

"properties" : {
      "provides-namespace" : true
}

答案 1 :(得分:0)

视觉指示

(基于Xcode 10.1)

1)选择资产目录文件夹。

enter image description here

*如果“提供名称空间”为false,则该文件夹为黄色。

2)确保“检查器”面板可见

enter image description here

3)在“检查器”面板中,选择“属性”检查器。选中“提供命名空间”复选框。

enter image description here

请注意,文件夹图标变为蓝色,表示“提供命名空间”为true。

enter image description here

在代码中引用图像时,请记住包括名称空间。

let image = UIImage(named: "Icon/Menu")