项目需要用到圆形的ImageView,所以自己就动手实现了一个, 这里只讲一下实现思路,项目源码我已经上传到github,下载地址放在文章的末尾
实现步骤:
1.getDrawable()方法获取到设置的图片
2.Drawable转Bitmap,此处一定要小心,不要用BitmapDrawable的getBitmap()方法去转,我之前就是用这种方法,最后结合Glide一起使用的时候报bug,后面改了一下
3.bitmap转圆形的bitmap,然后在onDraw方法中调用canvas.drawableBitmap();方法
4.最后一步外部框的添加,canvas.drawCircle()方法,paint类来设置框的颜色和宽度,这个东西可以通过自定义属性来设置
好了,大概也差不多了,花了半天的假期写的东西,欢迎大家下载