Android实现圆形图片或者圆角图片

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){

}

}

}

}

效果如图圆角图片

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

以上是 Android实现圆形图片或者圆角图片 的全部内容, 来源链接: utcz.com/p/240664.html

回到顶部