关于fresco加载图片的缓存设置及列表加载等

如果你的应用不需要显示Gif,或者显示的Gif由内部员工添加(可把控)的,可以用Glide!

如果你的应用不需要显示Gif,或者显示的Gif由内部员工添加(可把控)的,可以用Glide!

如果你的应用不需要显示Gif,或者显示的Gif由内部员工添加(可把控)的,可以用Glide!

之前写过一篇文章,是关于Glide的一些坑,Glide加载gif及本地视频缩略图的坑 ,因为我们公司的应用是涉及到发帖子的功能,这里用户是可以上传gif的,而某些文件本身就有一些问题的gif,用Glide加载不出来,上面的文章末尾说过了,所以采用了Fresco,用了Fresco,才发现坑更大啊,一点一点说吧。

首先要用到他们自己的View那些我就不重复了,功能确实强大,后面讲一些可配置可不配置但是配置了会更爽的内容

1,设置缓存大小等,可以参考这个Fresco缓存设置 ,设置了之后,再不会出现已经加载过的图片,被自动清理了

2,列表加载图片,一定要setResizeOptions和setOldController,如下图

图中的width和height不一定要很准确,比如你是Grid,但是又有间隙,那width你设置成 screenWidth/spanCount的大小就好了,滑动起来跟Glide差不多了

3,photoView,fresco貌似不能直接用photoView,没关系,有这个PhotoDraweeView 使用起来跟photoView差不多

4,长图加载,我用的是BigImageViewer 里面包含了放大缩小的功能了

有人会问,怎么判断是不是长图呢,我现在是没有判断,而是根据是否动态图(gif结尾)来加载,动态图用photoView,静态图用BigImageViewer


最后,用Fresco,我加载相册还是照样卡,跟Glide完全不能比,设置了setAutoPlayAnimations(false),.setBitmapsConfig(Bitmap.Config.RGB_565)都还是很卡,用的FrescoImageLoader.java 的也是很卡,不知道有人解决了吗

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容