我正在开发一款需要从网络缓存一些图片的应用,图片可能是100x100
我只需要知道哪个更好:
感谢您的帮助。
答案 0 :(得分:4)
Apple绝对不推荐将图像存储在数据库中,文件系统实际上非常擅长在磁盘上定位文件(本例中的图像),这使其成为保存图像的最佳解决方案。这些是苹果技术传播者在巴黎iPhone技术讲座世界巡回赛中使用的完全相同的词语。如果它只是几张图片,你可能会侥幸逃脱,但当这个数字可能变得非常大时,文件就可以了。
此外,您可以使用延迟加载方法来获取磁盘的图像,这将延迟将图像从磁盘加载到真正需要的时候。
[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"image.png"]]
编辑:imageWithContentsOfFile不会立即加载图像,因此不会锁定线程,也不会缓存图像。另一种方法imageNamed:确实锁定线程并立即加载图像,在光明的一面,它会缓存图像。
答案 1 :(得分:1)
根据过去的经验,从文件系统存储(和检索)图像应该比从DB中快一点。至于易于处理和维护,它只取决于您更熟悉的内容:SQL脚本或iphoneOS文件系统功能。