2

我第一次尝试在 Xcode 5 中使用图像资产目录并遇到了一些问题。以前我只是将图像文件夹(带有子文件夹)引用/链接到项目中,并将完整路径名传递给+[UIImage imageWithContentsOfFile:]以访问我需要的内容,但我想我会尝试使用资产目录用文件夹代替。

作为背景,我有一组大约 500 个项目,以及几种类型的相关图像(图标、配置文件等)。我的想法是能够在 Images.xcassets 中拥有一个“ itemIcons ”文件夹、“ itemProfiles ”文件夹等等。然后,每个文件夹将具有由参考号(例如“ 001 ”、“ 002 ”等)简单引用的资产。然后,我计划使用+[UIImage imageWithContentsOfFile:]根据需要加载所需的图像文件(我专门采用非缓存加载方法,因此不使用imageNamed)。不幸的是,我似乎找不到从特定文件夹加载特定图像的任何方法。

我也通过这样做得到编译器警告:

Asset Catalog Compiler Warning
The image set name "001" is used by multiple image sets.

这似乎意味着我将无法为此目的使用资产目录文件夹,并且要么必须返回使用外部引用的图像。

那么,是否可以通过编程方式从资产目录中的特定文件夹加载图像?

4

1 回答 1

3

使用资产目录与使用imageWithContentOfFile:.

您存储在资产目录中的图像会在构建时复制到设备,而您加载使用的图像是您在运行时imageWithContentOfFile保存到 Documents 文件夹中的图像(例如:通过生成图像或下载图像)。

您可以使用文件夹和图像集在资产目录中创建特定结构,但您将使用该imageNamed:方法加载它们,因此两个图像集不能具有相同的名称。

于 2014-08-06T10:20:49.303 回答