Glide4.7.1 圆角与centerCrop冲突问题
问题:在glide配置中使用options.transforms(new GlideRoundedCornersTransform(context,5));来实现圆角以及centerCrop效果时,刷新界面会出现闪烁
解决方法:由于glide默认采用了centerCrop方式显示图片,所以基本不需要再次设置,而圆角采用自定义控件的方式就可以实现其效果并不会出现闪烁问题
当然如果不介意可以使用下面方法:
public class GlideRoundTransform extends CenterCrop {private static float radius = 10f;public GlideRoundTransform(Context context) {this(context, 10);}public GlideRoundTransform(Context context, int dp) {super();this.radius = UnitConversionUtil.dip2px(context, dp);}@Overrideprotected Bitmap transform(BitmapPool pool, Bitmap toTransform, int outWidth, int outHeight) {//glide4.0+Bitmap transform = super.transform(pool, toTransform, outWidth, outHeight);return roundCrop(pool, transform);//glide3.0//return roundCrop(pool, toTransform);}private static Bitmap roundCrop(BitmapPool pool, Bitmap source) {if (source == null) return null;Bitmap result = pool.get(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888);if (result == null) {result = Bitmap.createBitmap(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888);}Canvas canvas = new Canvas(result);Paint paint = new Paint();paint.setShader(new BitmapShader(source, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP));paint.setAntiAlias(true);RectF rectF = new RectF(0f, 0f, source.getWidth(), source.getHeight());canvas.drawRoundRect(rectF, radius, radius, paint);return result;}public String getId() {return getClass().getName() + Math.round(radius);}@Overridepublic void updateDiskCacheKey(MessageDigest messageDigest) {}
}
Glide4.7.1 圆角与centerCrop冲突问题相关推荐
- Glide4.7加载图片RoundedCorners跟CenterCrop冲突问题解决
Glide加载图片时需要设置CenterCrop跟RoundedCorners时需要用到RequestOptions的transforms方法 单个设置时后面的设置的会覆盖前面设置的 如: new R ...
- 图片CenterCrop和圆角问题(Glide加载)
转载:http://blog.csdn.net/wenyiqingnianiii/article/details/52511747 CenterCrop与Transformer的共存问题 因为此bug ...
- 整理Glide方法使用含义(毛玻璃效果,实现圆角等)
现在项目中一般使用Glide进行图片加载,于是找一下他的各个方法的使用,方便使用而已. 添加依赖: compile 'com.github.bumptech.glide:glide:3.7.0' 基本 ...
- Android Studio 第五十四期 - 超级巨图Glide3.7和Glide4.1.1优化加载方案
相信大家看到上面的巨图会很懵逼~最近产品经理朝令夕改,有点烦,要不是还有外包项目在做,就不想干了,所以忍了,先做完十一后再说,毕竟找工作还是有点折腾,需要更高的薪水和技术的沉淀.好吧,啰嗦了一把 ...
- Android 图片加载框架 Glide4.x
概述 Glide是一个图片加载框架,使得我们可以轻松的加载和展示图片 Glide4.x新增apply()来进行设置,apply可以调用多次,但是如果两次apply存在冲突的设置,会以最后一次为准 新增 ...
- -shape 填充 圆角矩形 圆形 环形
属性 使用中可能出现的问题: 如果在某些手机中使用 shape 出现黑色填充背景,设置<solid android:color="@color/transparent"/&g ...
- android圆角ImageView的几种实现方式
前言 好长一段时间没写博客,继续吧.今天突然想起金三银四的时候,面试遇到的一个问题:如何实现圆角imageView.所在公司只用了其中一种方式,今天总结一下: 第一种:Glide加载图片自带api 如 ...
- 快速上手的Glide4.x教程
安卓基础开发库,让开发简单点. DevRing & Demo地址:https://github.com/LJYcoder/DevRing 学习/参考地址: https://blog.csdn. ...
- android 图片圆角 遮罩_Android 自定义View练手Demo(一)实现圆角遮罩效果
Android 自定义View系列文章 Android自定义View实现圆角遮罩效果 一图胜千言,有一个遮罩就会凸显出重点区域 1-1.jpg 本文通过两种方式来实现这种效果,来达到自定义View练手 ...
- android 裁剪圆角矩形,android – 如何使用中心裁剪创建部分圆角矩形可绘制而不创建新位图?...
背景 我已经看过如何用位图创建一个圆形的drawable,以及如何在它周围添加一个轮廓(AKA笔划),here. 问题 我无法找到如何在不绘制新位图的情况下仅对位图的某些角进行舍入,而不是创建新的位图 ...
最新文章
- Esper学习之十二:EPL语法(八)
- css层叠上下文和层叠顺序
- BugkuCTF-MISC题爆照
- docker 远程连接 文件看不到_开发提升十倍生产力: IDEA 远程一键部署 Spring Boot 到 Docker...
- 2016全国计算机二级题,2016全国计算机二级考生试题及答案
- 页面转发后文本显示???_无代码软件开发中超文本显示设计
- Oracle for Windows Embedded CE
- 用Global Mapper软件批处理将dwg转GeoPdf
- 学生想学信息学奥赛: DEV-C++的安装与介绍
- HTML-滚动字幕的源代码(可作滚动公告)
- 海外网红营销是战略还是战术?从“PDCA循环”层面规划营销
- 语音识别(ASR)论文优选:Adapting GPT, GPT-2 and BERT Language Models for Speech Recognition
- 实验三 ORI指令设计实验【计算机组成原理】
- java-net-php-python-jsp网络工程师在线测试系统计算机毕业设计程序
- android打印机没反应了,使用蓝牙打印机在Android中打印不起作用
- 终于找到了ubuntu卡的原因!
- [转]Flex 处理bmp图片as
- android调用fragment的方法,Android Fragment基本使用
- 1:MOST: A Multi-Oriented Scene Text Detector with Localization Refinement
- cad看图软件怎么才能将JPG转换为CAD