如何在Xcode中获取指定文件夹内的所有PNG图片?
解决Xcode中仅获取指定文件夹内PNG图片的问题
嗨,这个问题很好解决!你当前代码里把paths(forResourcesOfType:inDirectory:)的inDirectory参数传成了nil,这会让Bundle遍历整个应用包内的所有PNG资源。要只获取Fonts文件夹里的图片,只需要把这个参数改成目标文件夹的名称就行。
修改后的代码(更符合Swift风格的写法)
// 仅查找Fonts文件夹下的PNG文件 if let fontFolderPNGPaths = Bundle.main.paths(forResourcesOfType: "png", inDirectory: "Fonts") { for path in fontFolderPNGPaths { let fileName = (path as NSString).lastPathComponent print("Path - ", fileName) } }
关键说明
- 把
inDirectory的参数从nil替换为"Fonts",Bundle就会精准定位到这个子文件夹内搜索PNG资源,不会再遍历其他目录。 - 用Swift原生的可选绑定
if let替代了原代码里的强制解包和NSArray遍历,既保证了代码安全,也更符合现代Swift的编码习惯。 - 如果你的
Fonts文件夹是嵌套在其他目录下的(比如Assets/Fonts),只需要把路径写成相对路径即可,比如"Assets/Fonts"。
内容的提问来源于stack exchange,提问作者WT24
相关产品推荐
相关产品推荐

