【发布时间】:2013-03-31 07:17:46
【问题描述】:
有一次,我把我所有的图片都放在了 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 的 3 倍。 我疯了……救救我!非常感谢...
【问题讨论】:
-
如何将图像复制到 Documents 目录?
-
应用启动后为什么不能使用imageNamed获取图片?