使用 xcodeproj 在 Images.xcassets 中创建对图像的文件引用

Create file reference to image in Images.xcassets using xcodeproj

我正在用 Xcodeproj 编写脚本,我想在 .xcassets. 中创建对图像文件的引用 Finder 将 .xcassets.imageset 视为文件夹,但我不想在 xcode 中为每个文件夹创建一个组。

当我知道 Xcode 中的包含组时,我可以创建引用。即 project.main_group['Src'].new_reference(pathToProject/Src/fileName.m)

我想遍历 .xcassets 的子目录和文件并为每个图像创建一个引用。但我不想在 Xcode 中创建一个与 Finder 中的每个 imageset 相匹配的组,因为 Xcode 以其自己的方式处理 .xcassets 文件夹。

我希望能够做这样的事情:

project.main_group['Src']['Images.xcassets']['image_name.imageset'] .new_reference(pathToProject/Src/Images.xcassets/image_name.imageset/image_name.png) 上面一行在使用 Xcodeproj 时不起作用,因为它找不到任何名为 Images.xcassetsimage_name.imageset.

的组

任何人都可以指出正确的方向或举例说明如何创建对存储在 Images.xcassets 中的图像文件的引用吗?

感谢您的宝贵时间!

事实证明,如果您将 .xcassets 文件添加到项目中,Xcode 会为您处理图像引用。

我学到的另一件事是 .xcassets 文件夹应该作为资源添加到目标中,使用 xcodeproj 而不是文件引用。这样它将正确显示在 Project -> Target -> Build Phases -> Copy Bundle Resources.

例如target.add_resources([file_reference_to_xcassets]) 而不是 target.add_file_references([file_reference_to_xcassets])

希望这对以后的人有所帮助 :)