android-关于圆形头像

下面给大家一段代码作为工具类来直接使用如何将头像设为圆形。网上也有很多例子,作为个人来讲,我觉得有必要自己收藏一下

这里用到了MaskedImage抽象类,并用createMask()方法来设置形状,下面直接上代码

package com.example.sqgl.util;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;

public class CircularImage extends MaskedImage {
	public CircularImage(Context paramContext) {
		super(paramContext);
	}

	public CircularImage(Context paramContext, AttributeSet paramAttributeSet) {
		super(paramContext, paramAttributeSet);
	}

	public CircularImage(Context paramContext, AttributeSet paramAttributeSet,
			int paramInt) {
		super(paramContext, paramAttributeSet, paramInt);
	}

	public Bitmap createMask() {
		int i = getWidth();
		int j = getHeight();
		Bitmap.Config localConfig = Bitmap.Config.ARGB_8888;
		Bitmap localBitmap = Bitmap.createBitmap(i, j, localConfig);
		Canvas localCanvas = new Canvas(localBitmap);
		Paint localPaint = new Paint(1);
		localPaint.setColor(-16777216);
		float f1 = getWidth();
		float f2 = getHeight();
		RectF localRectF = new RectF(0.0F, 0.0F, f1, f2);
		localCanvas.drawOval(localRectF, localPaint);
		return localBitmap;
	}
}

在xml 中进行注册设置圆形的大小,其中包名要对应

<com.example.sqgl.util.CircularImage
                        android:id="@+id/imageView11"
                        android:layout_width="80dp"
                        android:layout_height="80dp"
                        android:layout_centerInParent="true" 
                     
                       />
在Activity中findViewById并且设置图片与imageView用法相同

imageView11=(CircularImage) findViewById(R.id.imageView11);

imageView11.setImageResource(R.drawable.user);

下面面是效果图




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值