Can I access all images in a .xcassets at once?

2019-01-20 12:16发布

I have a big amount of images in a Images.xcassets and I need to load them all in a UITableView. But I don't wat to write each name for the [UIImage imageNamed:@"imageName"].

What i'm looking for is something like:

NSArray *images = [MagicClass loadAllImagesIn:@"images.xcassets"];

Do you know if this is even possible? If not maybe i'll create a .bundle...

Thanks!!

1条回答
霸刀☆藐视天下
2楼-- · 2019-01-20 12:45

Images.xcassets copies all the images in bundle, and it mixes up with other images, better follow the instructions in image below

enter image description here

By adding the folder with the option Create folder reference will actually create a folder in main bundle with its content, and all your images will be separated. And using the following code you can access all the images.

NSString *dirPath = [[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"images"];
NSError * error;
NSArray * images =  [[NSFileManager defaultManager]
                      contentsOfDirectoryAtPath:dirPath error:&error];

Hope it helps.

查看更多
登录 后发表回答