首页 > 解决方案 > 如何从Xcode中的特定文件夹中获取所有png?

问题描述

我想在 Xcode 的特定文件夹中获取所有 png。我目前正在使用此代码来获取 PNG 文件。

(Bundle.main.paths(forResourcesOfType: "png", inDirectory: nil) as NSArray).enumerateObjects({ obj, idx, stop in
        var path = (obj as! NSString).lastPathComponent
        print("Path - ",path)
})

但这会从所有文件夹中获取所有 PNG,例如 - Example-1

我想只在字体文件夹中获取图像。我怎样才能做到这一点 ?

标签: iosswiftxcodedirectory

解决方案


当我查看您的代码时,我假设您想从 Bundle App 文件夹中获取字体文件夹中的所有图像路径。在这种情况下,您必须将您的字体文件夹设置为参考文件夹(蓝色图标),而不是组文件夹(黄色图标),如下所示:
在此处输入图像描述

您可以在 Project Navigator 中拖动文件夹,它将显示此框:
在此处输入图像描述

请务必选择创建文件夹引用并选择您的项目目标。

原因是 Reference 文件夹是 Bundle 中的真实文件夹。Group Folder 中的所有文件都将被展平,这意味着它们都在您的 Bundle 的根目录中,那么您将不知道这些文件的父文件夹。

然后您可以使用您的代码来检索 png(+ 您应该为 inDirectory 参数指定“字体”):

(Bundle.main.paths(forResourcesOfType: "png", inDirectory: "Fonts") as NSArray).enumerateObjects({ obj, idx, stop in
    var path = (obj as! NSString).lastPathComponent
    print("Path - ",path)
})

希望这可以帮助。


推荐阅读