我们在做项目的时候给图片切圆角很常见,这样可以使我们做出来的APP更美观漂亮,以前做ios的时候,给图片切圆角很简单,两行代码就可以搞定
imageView.layer.cornerRadius = 8;(值越大,角就越圆)此处若是想切成圆形直接宽度一般就好
imageView.layer.masksToBounds= YES;
而自从接触了Android 发现Android里面没有这样简单的切圆角方法,需要自己去重绘,今天就跟大家简单介绍一下这个重绘切圆角的方法
public static Bitmap getRoundCornerBitmap(Bitmap bitmap, float roundPX){
int width = bitmap.getWidth();
int height = bitmap.getHeight();
Bitmap bitmap2 = Bitmap.createBitmap(width, height, Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap2);
final int color = 0xff424242;
final Paint paint = new Paint();
final Rect rect = new Rect(0, 0, width, height);
final RectF rectF = new RectF(rect);
paint.setColor(color);
paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
canvas.drawRoundRect(rectF, roundPX, roundPX, paint);
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
canvas.drawBitmap(bitmap, rect, rect, paint);
return bitmap2;
}
在需要用到这个方法的时候直接调用就行 如: ***.getRoundCornerBitmap(BitmapObj, 10.0f);