Android圆形图片或者圆角图片的快速实现,具体内容如下
话不多说直接上code
xml文件布局
<LinearLayout android:id="@+id/ll_headpict" android:layout_width="match_parent" android:layout_height="97dp" android:layout_margin="13dp" android:background="@drawable/shape_white_radius10_solid" android:gravity="center_vertical" android:orientation="horizontal" android:paddingLeft="25dp"> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="头像" android:textColor="@color/color4A4A4A" android:textSize="14sp" android:textStyle="bold" /> <ImageView android:id="@+id/iv_headpict" android:layout_width="60dp" android:layout_height="60dp" android:layout_marginRight="37dp" android:scaleType="fitXY" android:src="@mipmap/ic_headview_demo" /> </LinearLayout>
初始化控件之后用工具类加载
//第一个参数上下文,第二个控件名称,第三个图片url地址,第四个参数圆角大小
ViewUtils.loadImageRadius(this, mIvpict, stringUrl, 15);//头像
ViewUtils.java工具类
/** * Created by wjw on 2016/11/28 * 倒圆角工具类 */ public class ViewUtils { /** * 图片加载 * @param context * @param iv * @param url */ public static void loadImage(Context context, ImageView iv, String url) { if(null ==context || null==iv){ return; } if(Utils.isTxtEmpty(url)){ try { Glide.with(context).load(R.mipmap.placeholder_icon) .dontAnimate().diskCacheStrategy(DiskCacheStrategy.ALL).into(iv); }catch (Exception e){ } }else { try { Glide.with(context).load(url) .dontAnimate().diskCacheStrategy(DiskCacheStrategy.ALL).placeholder(R.mipmap.placeholder_icon).into(iv); } catch (Exception e) { } } } public static void loadImage(Context context, ImageView iv, int id) { if(null ==context || null==iv){ return; } try { Glide.with(context).load(id) .dontAnimate().diskCacheStrategy(DiskCacheStrategy.ALL).placeholder(R.mipmap.placeholder_icon).into(iv); }catch (Exception e){ } } /** * 本地图片 * @param context * @param iv * @param id * @param radius */ public static void loadImage(Context context, ImageView iv, int id,int radius) { if(null ==context || null==iv){ return; } try { Glide.with(context).load(id) .dontAnimate().diskCacheStrategy(DiskCacheStrategy.ALL). transform(new GlideRoundTransform(context, radius)).into(iv); }catch (Exception e){ } } public static void setImageResource(ImageView iv, int id) { if(null!=iv){ iv.setImageResource(id); } } /** * 加载网络图片(带圆角) * @param context * @param iv * @param url * @param radius */ public static void loadImageRadius(Context context, ImageView iv, String url, int radius) { if(null ==context || null==iv){ return; } if(Utils.isTxtEmpty(url)){ try { Glide.with(context).load(R.mipmap.placeholder_icon) .dontAnimate().diskCacheStrategy(DiskCacheStrategy.ALL). transform(new GlideRoundTransform(context, radius)).into(iv); }catch (Exception e){ } }else{ try { Glide.with(context).load(url) .dontAnimate().diskCacheStrategy(DiskCacheStrategy.ALL). transform(new GlideRoundTransform(context, radius)).placeholder(R.mipmap.placeholder_icon).into(iv); }catch (Exception e){ } } } /** * 加载网络图片(圆形) * @param context * @param iv * @param url */ public static void loadImageCircle(Context context, ImageView iv, String url) { if(null ==context || null==iv){ return; } if (Utils.isTxtEmpty(url)) { try { Glide.with(context).load(R.mipmap.placeholder_icon) .dontAnimate().diskCacheStrategy(DiskCacheStrategy.ALL). transform(new GlideCircleTransform(context)).into(iv); }catch (Exception e){ } } else { try { Glide.with(context).load(url) .dontAnimate().diskCacheStrategy(DiskCacheStrategy.ALL).transform(new GlideCircleTransform(context)). placeholder(R.mipmap.placeholder_icon).into(iv); }catch (Exception e){ } } } }
效果如图圆角图片
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。