ios – AFNetworking中UIImageView的磁盘支持图像缓存

ios – AFNetworking中UIImageView的磁盘支持图像缓存,第1张

概述我希望将UI ImageView AFNetworking类别中默认使用的AFImageCache换成基于磁盘的东西,并且可以更准确地管理(类似于 NSURLCache).不幸的是,由于UIImageView AFNetworking是一个类别而不是子类,我不能只用UIImageView或其他类别的子类覆盖 af_sharedImageCache. 有没有其他方法来实现这个功能,而无需将大多数UI 我希望将UI ImageVIEw AFNetworking类别中默认使用的AFImageCache换成基于磁盘的东西,并且可以更准确地管理(类似于 NSURLCache).不幸的是,由于UIImageVIEw AFNetworking是一个类别而不是子类,我不能只用UIImageVIEw或其他类别的子类覆盖 af_sharedImageCache.

有没有其他方法来实现这个功能,而无需将大多数UIImageVIEw AFNetworking复制并粘贴到我自己的子类中?

解决方法 SDWebImage项目提供了类似的UIImageVIEw类别,但提供了内存(使用NSCache)和磁盘(使用NSfileManager)缓存.我建议您在需要缓存到磁盘时使用它.

此实现的缺点是您的网络请求不会通过您的AFhttpClIEnt子类,因此根据您的需求,您可能需要实现自己的 *** 作队列,身份验证等.如果您只是将它用于基本的东西,就像在表视图中显示头像图像一样,应该没问题.

如果这个缺点困扰你,另一个想法是使用SDImageCache(包含在SDWebImage项目中)来缓存图像,并使用AFNetworking自己下载它们.

最后,请注意AFNetworking内置了对NSURLCache的支持,如果您创建一个,它会将您的图像缓存到磁盘.但是,图像缓存通常用于在UIScrollVIEw中显示大量图像,而NSURLCache没有足够好的性能来进行平滑滚动.

总结

以上是内存溢出为你收集整理的ios – AFNetworking中UIImageView的磁盘支持图像缓存全部内容,希望文章能够帮你解决ios – AFNetworking中UIImageView的磁盘支持图像缓存所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1076451.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存