Android圆形的ImageView

本文介绍了如何在Android中自定义ImageView实现圆形图片,并解决了使用默认方法导致的图片边缘模糊、无抗锯齿的问题。通过提供一个改进的自定义RoundImageView类的代码,展示了如何在onDraw()方法中应用 PorterDuffXfermode 模式来实现清晰的圆形图像。
摘要由CSDN通过智能技术生成

很对不住大家 此代码有问题,这样做出来的原形imageview没有抗锯齿,到这图片边缘模糊 效果如下:

 

由于项目需要图片要做成圆形的,只能自定义ImageView,下边自定义的ImageView效果如上图,边缘不抗锯齿,模糊

public class RoundImageView extends ImageView {



public RoundImageView(Context context) {
super(context);
// TODO Auto-generated constructor stub
}


public RoundImageView(Context context, AttributeSet attrs) {
super(context, attrs);
}


public RoundImageView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}

@Override
protected void onDraw(Canvas canvas) {
Path clipPath = new Path();
int w = this.getWidth();
int h = this.getHeight();
clipPath.addCircle(w / 2, h / 2, w / 2, Path.Direction.CW);
canvas.clipPath(clipPath);
canvas.setDrawFilter(new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG
|
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值