引用资产目录中文件夹中的图像

问题描述 投票:12回答:2

在资产目录中,您可以创建文件夹。

在文件夹内,所有图像名称必须是唯一的。

如果您有一个名为myImage的图像,并且您尝试将另一个图像命名为myImage,那么它将自动重命名为myImage-1

但是,如果您有两个文件夹,那么您可以在不同的文件夹中使用相同名称的图像。

那么,必须有一种方法可以参考这些吗?

有谁知道如何通过资产目录中的文件夹和图像名称引用图像?

ios objective-c uiimage asset-catalog
2个回答
14
投票

我花了很多时间,但终于弄明白了。 Answered here。复制如下。

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

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

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

6
投票

视觉指令

(基于Xcode 10.1)

要使路径唯一标识资产目录图像,请将文件夹的“提供命名空间”属性设置为true

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

enter image description here

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

2)确保Inspectors面板可见

enter image description here

3)在Inspectors面板中,选择Attributes Inspector。选中“提供命名空间”复选框。

enter image description here

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

enter image description here

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

let image = UIImage(named: "Icon/Menu")
© www.soinside.com 2019 - 2024. All rights reserved.