曾经,我把所有的图片都放在APP Bundle中。我使用imageNamed函数获取一张图片。后来,我决定在应用启动时将一些图片复制到Document中。因此,我不能再使用imageNamed函数来获取图片了。我改用imageWithContentsOfFile函数来获取图片:
NSString* documentsDirectoryPath =[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES) objectAtIndex:0];
UIImage* result =[UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@/%@.%@", documentsDirectoryPath, fileName, extension]];
然而,imageWithContentsOfFile返回的图像质量低(非常模糊)。 所有我的图像都是128 * 128。 我使用以下代码检测图片的大小:
NSData * imgData = UIImagePNGRepresentation(image);
NSLog(@"size : %d",[imgData length]);
我发现通过 imageNamed 返回的图片大小是使用 imageWithContentsOfFile 的三倍。 我被搞疯了...救救我!非常感谢...