iOS – asynchronouscaching和加载图像
我想为iOS的图像加载和caching库
- 加载图像asynchronous,
- caching图像,具有可configuration的caching大小和LRU行为,
- 检查图像是否已被更新,使用HTTP HEAD,
- 在发生错误代码或无效图像时不会caching任何内容。
我看了HJCache ,但是它只满足前两个标准。 有什么更好的吗?
我知道这个线程已经被回答,但是我已经尝试了一个工作良好的库。 我之前使用ASIHttpRequest,差别很大。
https://github.com/rs/SDWebImage
此外,如果有人需要resize或裁剪远程图像,并具有SDWebImage提供相同的function,我已经集成了SDWebImage库与UIImage + Resize库(Trevor Harmon),并创build了一个示例项目。 我修改了SDWebImage的代码来处理转换(裁剪,resize)。
该项目在https://github.com/toptierlabs/ImageCacheResize上公开。; 随意使用它!
编辑:现在ASI已被弃用,但@托尼的答案有一个链接到一个图书馆,似乎这样做大部分(声明 – 我还没有尝试过,并通过@托尼的build议!)
ASIHTTPRequest完成所有这些:)
所有你需要做的就是添加一些类似的成功callback
UIImage *image = [UIImage imageWithData:[request responseData]]; // If the image is nil ASIHTTPRequest will let you remove the data from the cache // but I can't remember off the top of my head how. Checkout the docs!
编辑
而当你完成它,你可以随时popup到我们其他人的github上。 。 。
我最近看了一些你所描述的东西 – 无论是一般的数据caching,还是一个以图片为中心的东西 – 都没有发现太多的兴趣。 所以你可能不得不自己推出所有这些function。
有各种博客post和详细说明这些东西的东西,如http://davidgolightly.blogspot.com/2009/02/asynchronous-image-caching-with-iphone.html 。
我认为你已经考虑过Three20图书馆? 我不认为这会覆盖你的要求。