我将我的图像保存在NSDocumentsDirectory中:
for (int i = 0; i < info.count; i++) {
NSLog(@"%@", [info objectAtIndex:i]);
NSString *savedImagePath = [documentsDir stringByAppendingPathComponent:[NSString stringWithFormat:@"oneSlotImages%d.png", i]];
ALAssetRepresentation *rep = [[info objectAtIndex: i] defaultRepresentation];
UIImage *image = [UIImage imageWithCGImage:[rep fullResolutionImage]];
NSData *imageData = UIImagePNGRepresentation(image);
[imageData writeToFile:savedImagePath atomically:YES];
}
我很难将它们加载到阵列中。我在网上搜索过这个。
这可以用于NSDocumentsDirectory
吗?
for(int i = 1; i <= 21; i++)
{
[images addObject:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"Images%d.png", i] ofType:@"jpg"]]];
}
答案 0 :(得分:1)
这是您的实际代码吗? 如果是这种情况,则存在(至少)两个问题。 首先,文件名在保存和加载方面略有不同。 其次,您从包中加载图片,而不是从文档目录加载。
你想以这种方式加载它们吗?
另请注意,如果您有20张完整照片的图片,那么将它们加载到UIImages数组中可能是一个糟糕的主意。它可能因内存不足而崩溃。
NSArray *paths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory, NSUserDomainMask ,YES );
NSString *documentsDir = [paths objectAtIndex:0];
for(int i = 1; i <= 21; i++)
{
NSString *savedImagePath = [documentsDir stringByAppendingPathComponent:[NSString stringWithFormat:@"oneSlotImages%d.png", i]];
[images addObject:[UIImage imageWithContentsOfFile:savedImagePath]];
}