博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
创建一个圆形头像框
阅读量:7152 次
发布时间:2019-06-29

本文共 1553 字,大约阅读时间需要 5 分钟。

GitHub:

package com.example.administrator.testt;import android.content.Context;import android.graphics.Bitmap;import android.graphics.Canvas;import android.graphics.Paint;import android.graphics.PaintFlagsDrawFilter;import android.graphics.Path;import android.graphics.Rect;import android.graphics.Region;import android.util.AttributeSet;public class RoundImageView extends android.support.v7.widget.AppCompatImageView{    private Bitmap mBitmap;    private Rect mRect = new Rect();//Rect=Rectangle    private PaintFlagsDrawFilter pdf = new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG);    private Paint mPaint = new Paint();    private Path mPath = new Path();    public RoundImageView(Context context, AttributeSet attributeSet) {        super(context,attributeSet);        init();    }    public void setBitmap(Bitmap bitmap) {        this.mBitmap = bitmap;    }    private void init(){        mPaint.setStyle(Paint.Style.STROKE);        mPaint.setFlags(Paint.ANTI_ALIAS_FLAG);        mPaint.setAntiAlias(true); // 抗锯齿    }    @Override    protected void onDraw(Canvas canvas) {        super.onDraw(canvas);        if (mBitmap == null) {            return;        }        mRect.set(0, 0, getWidth(), getHeight());        canvas.save();        canvas.setDrawFilter(pdf);        mPath.addCircle(getWidth()/2,getWidth()/2,getHeight()/2,Path.Direction.CCW);        canvas.clipPath(mPath, Region.Op.REPLACE);        canvas.drawBitmap(mBitmap, null, mRect, mPaint);//绘制图        canvas.restore();    }}

 

转载于:https://www.cnblogs.com/Ravenzzz/p/9771280.html

你可能感兴趣的文章
scala:类型转换
查看>>
mysql 远程连接报错
查看>>
洛谷P3209 [HNOI2010]平面图判定(2-SAT)
查看>>
Problem C: [noip2016十连测第五场]travel (构造+贪心)
查看>>
css3自定义滚动条样式
查看>>
Spring框架基本概念之POJO,EJB,DI,AOP,IOO,JCA
查看>>
数据库_SQL语句
查看>>
RecyclerView 下拉刷新和加载更多
查看>>
Java线程池相关类-Executor框架
查看>>
插入排序Java版
查看>>
C#分页插件 Webdiyer
查看>>
如何减少回流,重绘
查看>>
逗号分隔的字符串与List互转
查看>>
python基础===理解Class的一道题
查看>>
****IQ Test
查看>>
搜索专题:Balloons
查看>>
TensorFlow从入门到理解(三):你的第一个卷积神经网络(CNN)
查看>>
《转》Web Service实践之——开始XFire
查看>>
android使用微软雅黑字体
查看>>
Luogu4887 第十四分块(前体)
查看>>