我正在开发一个应用程序,我将一个包含图像的文件夹拖放到我的 Xcode 项目中。
当应用程序启动时,我会收集应用程序中图像的所有文件名,以便稍后延迟加载它们:
-(NSArray *)fetchImagesInFolder:(NSString *)folderName{
NSArray *allImagesArray = [NSArray arrayWithArray:[[NSBundle mainBundle] pathsForResourcesOfType:nil inDirectory:folderName]];
if([allImagesArray count] == 0){
NSLog(@"No images found in %@", folderName);
return nil;
}
return allImagesArray;
}
这是我的问题:这只适用于 1 次 4 次。4 次中有 3 次[allImagesArray count]
是 0。
然后我必须从项目中删除文件夹,再次拖放它,如果我之前选择了“为任何添加的文件夹创建组”,我将选择“为任何添加的文件夹创建文件夹引用”,反之亦然,清理,构建,然后运行。该解决方案在 4 次中有 3 次有效。
如果我右键单击项目生成的 .app 文件,然后单击“显示包内容”,则图像始终存在。但是,为什么pathsForResourcesOfType:inDirectory:
如此不可靠呢?