关于glide加载图片被拉伸后失真的问题

版权声明:本文为博主原创文章,转载请注明出处 https://blog.csdn.net/fzkf9225/article/details/81131114

网上有很多关于关于gilde加载图片拉伸解决办法,但是有的可能对于有的人好使,有的人不好使,这是为什么呢?原因在于图片的问题,其实那些处理方式都没有解决被拉伸失真的问题。只是恰好图片可以这样处理罢了。

关于启动页一般都会使用glide加载本地图片或广告图片,但是你如果用h5做的启动页当我没说。请不要使用imageView.setImageResource(R.mipmap.*);这个方法,因为在大屏手机上可能会oom,但是你也可以使用BitmapFactory节省资源去加载image图片,但是还是可能会存在失真的问题。
android屏幕太多,现在也除了刘海屏等,所以在部分手机上必须要拉伸充满屏幕,不然你启动页挥着欢迎也就会有白边。那么glide就会带来这个拉伸后失真的问题。
下面可以看看下面两张图片的对比!
第一张:这张图片就是拉伸后失真的,手机上比较明显,有很多横杠
失真图片
这里是处理后的图!
这里写图片描述

网上很多博客都说设置glide以asBitmap方式去加载就不会这样了,其实不然,必须在加上

.format(DecodeFormat.PREFER_ARGB_8888)//设置图片解码格式

默认格式RGB_565使用内存是ARGB_8888的一半,但是图片质量就没那么高了,而且不支持透明度。完整代码如下:

Glide.with(context)
.load(R.mipmap.*)
.asBitmap()
.format(DecodeFormat.PREFER_ARGB_8888)//设置图片解码格式
.placeholder(R.mipmap.icon_banner_default)
.error(R.mipmap.icon_banner_default)
.into(imageView);

猜你喜欢

转载自blog.csdn.net/fzkf9225/article/details/81131114
今日推荐