我的Xcode项目中有如下结构。
我需要从项目中读取所有图像,并且需要将其存储在数组中。
我使用了其他一些StackOverflow帖子中的以下代码,但它无效。
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"Images"ofType:@""];
NSDirectoryEnumerator *direnum;
direnum = [fileManager enumeratorAtPath: filePath];
imageFolder = [NSMutableArray new];
for(NSString *filename in direnum){
if([[filename pathExtension] isEqualToString:@"png"]){
[imageFolder addObject:filename];
}
}
NSLog(@"Files in the folder %@",imageFolder);
我很感激,如果有人帮我完成这个。
答案 0 :(得分:2)
将所有图像放入数组中很简单
NSBundle *imageBundle=[NSBundle bundleWithPath: myBundlePath];
NSArray *allImageURLs=[imageBundle URLsForResourcesWithExtension:@"png" subdirectory:nil];
答案 1 :(得分:1)
- (NSArray *)pathsForResourcesOfType:(NSString *)extension inDirectory:(NSString *)subpath
会为您提供所需的数组。
NSArray *imagesArray = [[NSBundle mainBundle] pathsForResourcesOfType:@"png" inDirectory:@"Images"];
答案 2 :(得分:0)
您可以尝试以下
NSArray *pathArray = [[NSBundle mainBundle] pathsForResourcesOfType:@"png" inDirectory:nil];
[pathArray enumerateObjectsUsingBlock:^(NSString *pathString, NSUInteger idx, BOOL *stop) {
UIImage *yourImage = [[UIImage alloc] initWithContentsOfFile:pathString];
}];
答案 3 :(得分:0)
请使用此代码,希望它能正常工作。
NSString *dirPath = [[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"images"];
NSError * error;
NSArray * images = [[NSFileManager defaultManager]
contentsOfDirectoryAtPath:dirPath error:&error];