解决Glide加载圆形图片,第一次只显示点位图的问题

解决Glide加载圆形图片,第一次只显示点位图的问题

 
1 parent 54cf183 commit ce068f3db5033b9af4b1b6ca5b9e77184dce9bcb @studiotang studiotang committed on 4 Nov 2015
Showing   with  37 additions and  10 deletions.

  @@ -68,7 +68,7 @@ public View getView(int position, View convertView, ViewGroup parent) {
    }
   
    if (!TextUtils.isEmpty(getItem(position).getImgUrl())) {
   -ImageLoaderUtils.displayImg(getItem(position).getImgUrl(), holder.imvBlogger);
    +ImageLoaderUtils.displayRoundImage(getItem(position).getImgUrl(), holder.imvBlogger);
    }else {
    holder.imvBlogger.setImageResource(R.drawable.ic_default);
    }
 
@@ -113,7 +113,7 @@ public View getView(int position, View convertView, ViewGroup parent) {
    holder.date.setText(item.getPostTime());
    // holder.reply.setText(item.getReplyCount());
   
   -ImageLoaderUtils.displayImg(item.getUserface(), holder.userface);
    +ImageLoaderUtils.displayRoundImage(item.getUserface(), holder.userface);
    break;
    caseAppConstants.DEF_COMMENT_TYPE.CHILD:
    holder.name.setText(item.getUsername());
 
    @@ -1,8 +1,13 @@
    packagecom.free.csdn.util;
   
    importcom.bumptech.glide.Glide;
    +importcom.bumptech.glide.request.target.BitmapImageViewTarget;
    importcom.free.csdn.R;
   
    +importandroid.content.Context;
    +importandroid.graphics.Bitmap;
    +importandroid.support.v4.graphics.drawable.RoundedBitmapDrawable;
    +importandroid.support.v4.graphics.drawable.RoundedBitmapDrawableFactory;
    importandroid.text.TextUtils;
    importandroid.widget.ImageView;
   
@@ -19,13 +24,12 @@
    * 加载图片
    *
    * @param url
   - * @param container
    + * @param imageView
    */
   -public static void displayImg(String url, ImageView container) {
   -// Glide.with(myFragment).load(url).centerCrop().placeholder(R.drawable.loading_spinner)
   -// .crossFade().into(myImageView);
   -Glide.with(container.getContext()).load(url).centerCrop().crossFade()
   - .error(R.drawable.ic_default).into(container);
    +public static void displayImg(String url, ImageView imageView) {
    +Glide.with(imageView.getContext()).load(url).centerCrop().crossFade().placeholder(R.drawable.ic_default)
    + .error(R.drawable.ic_default).into(imageView);
    +
    }
   
    /**
@@ -37,8 +41,31 @@ public static void displayImg(String url, ImageView container) {
    * 默认占位图片
    */
    publicstatic void displayImg(Stringurl, ImageView container,int defaultResId) {
   -Glide.with(container.getContext()).load(url).centerCrop().crossFade()
   - .placeholder(defaultResId).error(R.drawable.ic_default).into(container);
    +Glide.with(container.getContext()).load(url).centerCrop().crossFade().placeholder(defaultResId)
    + .error(R.drawable.ic_default).into(container);
    + }
    +
    +/**
    + * 加载圆形图片
    + *
    + * @error 加载圆形图片或者其他自定义图片,需要作一些转化,详细请参考:
    + * <a herf="http://www.jianshu.com/p/4a3177b57949">
    + *
    + * @param url
    + * @param imageView
    + */
    +public static void displayRoundImage(String url, final ImageView imageView) {
    +final Context context = imageView.getContext();
    +Glide.with(context).load(url).asBitmap().centerCrop().placeholder(R.drawable.ic_default)
    + .error(R.drawable.ic_default).into(newBitmapImageViewTarget(imageView) {
    +@Override
    +protected void setResource(Bitmapresource) {
    +RoundedBitmapDrawable circularBitmapDrawable= RoundedBitmapDrawableFactory
    + .create(context.getResources(), resource);
    +// circularBitmapDrawable.setCircular(true);
    + imageView.setImageDrawable(circularBitmapDrawable);
    + }
    + });
    }
   
    /**
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值