我使用加载的 SDWebImage 图像作为默认图像加载器,我还使用 AZAPreviewController 在全屏视图中显示图像。
AZAPreviewController 使用自己的缓存文件夹来维护相同图像的缓存,但在尝试获取 AZAPreviewItem 时,图像不会显示在 iOS-8 中。
任何人都可以帮助我,或者任何人都可以建议任何更好的支持 iOS8 的预览控制器(全屏图像查看器)。提前致谢。
我使用加载的 SDWebImage 图像作为默认图像加载器,我还使用 AZAPreviewController 在全屏视图中显示图像。
AZAPreviewController 使用自己的缓存文件夹来维护相同图像的缓存,但在尝试获取 AZAPreviewItem 时,图像不会显示在 iOS-8 中。
任何人都可以帮助我,或者任何人都可以建议任何更好的支持 iOS8 的预览控制器(全屏图像查看器)。提前致谢。
AZAPreview 控制器和SDWebImage都有不同的工作机制。
AZAPreviewController使用 ios 的 QLPreviewcontroller 作为超类,将图像保存为文档目录中的扩展名文件。如果存在,直接从目录中获取图片,否则从url下载并保存到文档目录中。
而SDWebImage将图像存储为 NSDATA 并将数据存储到目录文件夹中。加载任何图像时获取数据并将其转换为 UIImage。
所以一般来说,如果我们同时使用这两个库,单个图像将被存储两次,这会消耗内存并且效率不高。
我找到了一个预览控制器[MWPhotos][1],它使用 SDWebImage 作为其子库来加载图像,这些图像不会在存储数据时产生任何冲突,并且更好地保持更少的缓存内存。
因此,当我们需要使用 SDWebImage 作为缓存库的预览控制器时,总结使用 MWPhotoBrowser。
MWPhotoBrower 参考项目:[1]:https ://github.com/mwaterfall/MWPhotoBrowser
谢谢。