Glide使用CircleImageView,显示图片出错的问题
2017-04-05 14:46
393 查看
前言
正文
相应的,用法:
正文
前言
Glide通过CircleImageView来加载图片…………是个大坑,很多人估计都遇到过这种情况:当通过Glide来在CircleImageView上加载图片的时候,第一次显示的是占位图,刷新一次才是要加载的图片。现在写下这篇博客,记录下解决方法。正文
public class GlideCircleImage extends BitmapTransformation { public GlideCircleImage(Context context) { super(context); } protected Bitmap transform(BitmapPool pool, Bitmap toTransform, int outWidth, int outHeight) { return circleCrop(pool, toTransform); } private static Bitmap circleCrop(BitmapPool pool, Bitmap source) { if (source == null) return null; int size = Math.min(source.getWidth(), source.getHeight()); int x = (source.getWidth() - size) / 2; int y = (source.getHeight() - size) / 2; // TODO this could be acquired from the pool too Bitmap squared = Bitmap.createBitmap(source, x, y, size, size); Bitmap result = pool.get(size, size, Bitmap.Config.ARGB_8888); if (result == null) { result = Bitmap.createBitmap(size, size, Bitmap.Config.ARGB_8888); } Canvas canvas = new Canvas(result); Paint paint = new Paint(); paint.setShader(new BitmapShader(squared, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP)); paint.setAntiAlias(true); float r = size / 2f; canvas.drawCircle(r, r, r, paint); return result; } @Override public String getId() { return getClass().getName(); } }
相应的,用法:
GlideCircleImage circleImage = new GlideCircleImage(context); Glide.with(context).load(xxx).transform(circleImage).placeholder(R.drawable.default_avatar).crossFade().into(avatar);
相关文章推荐
- Glide与CircleImageView加载圆形图片显示不正常的问题
- 关于Glide显示默认图片的问题(circleImageView配合问题)
- Android开发第三方库glide和圆形控件circleimageview一起使用第一次进入无法显示问题
- Android在使用WebView时,图片显示出错问题。
- 详解Android中Glide与CircleImageView加载圆形图片的问题
- binbinyang-----Glide用在CircleImageView上显示默认图片的问题,以及Glide让imageview自动显示成圆形头像
- Widget中使用ImageView显示图片的问题
- 在RecyclerView中使用Glide和CircleImageView加载圆形图片时出现图片错乱
- RoundedImageView使用吐槽心得(RoundedImageView与Glide加载图片,第一次加载无法圆角问题)
- RoundedImageView使用吐槽心得(RoundedImageView与Glide加载图片,第一次加载无法圆角问题)
- Widget中使用ImageView显示图片的问题
- Glide用在CircleImageView上每次进入第一次显示默认图片
- Glide加载CircleImageView自定义圆形图片时解决不能加载成圆形图片问题
- Andrnoid 使用Glide时ImageView不显示的问题
- Glide 加载圆形图片CircleImageView遇到的问题
- Android在打开一个新的Activity浏览大图时使用ImageView/PhotoView的时候图片显示在屏幕上部的问题
- 安卓学习笔记(一)Android ImageButton、ImageView控件属性设置 图片显示问题
- Android Glide+CircleImageView实现加载圆形图片列表
- ImageView setImageURI图片不改变\NetWorkImageView 不显示的问题
- 获取sd卡中的图片URL并显示,同时使用ImageView把选择的图片展现出来