解决Glide加载Gif动态图(圆角),边角有黑色阴影问题。

1)问题描述:

在开发android app的项目中,碰到了一个小问题,就是利用Glide加载Gif图片,因为Glide本身是支持Gif加载的,所以直接使用。如下图所示:
解决Glide加载Gif动态图(圆角),边角有黑色阴影问题。_第1张图片
截图中的加载中的动图是UI设计的图,有圆角;发现出现了边角的阴影,尝试了换图,检查代码,没有问题;后来通过Google找到了一篇文章,解决了这个问题。

2)原因分析:

参考了这篇文章:Glide加载圆角gif图边角黑边问题
大致问题是图片解码格式默认为RGB_565导致的,在加载时将解码格式手动设置为ARGB_8888即可。
关于原理的分析,作者写的很详细,有想要深入了解的小伙伴可以看下。

3)解决办法:

手动设置解码格式为RGB_888即可。代码如下:

 Glide.with(context)
                .setDefaultRequestOptions(new RequestOptions().set(GifOptions.DECODE_FORMAT, PREFER_ARGB_8888))
                .load(R.drawable.pop_loading_text)
                .into(img_loading);

修改后效果图如下:
解决Glide加载Gif动态图(圆角),边角有黑色阴影问题。_第2张图片

4)总结

编码格式的问题,影响了Glide加载Gif。按照上面的办法修改后,问题得以解决。Glide是很强大图片加载工具,对它的了解还不够深入,需要进一步的学习。

参考资料:Glide加载圆角gif图边角黑边问题

谢谢阅读,完毕!

你可能感兴趣的:(android工作杂记,android,Glide,Gif,阴影)