如何在Android Studio上制作圆形图像视图
我知道有很多关于这个问题的例子,但我仍然无法完成以下内容,有没有一种简单的方法可以在android studio上创建circle ImageView?您可以使用外部库您不需要使用任何外部库来创建ImageView circle。使用此类使您的ImageView成为圆形 并在Java文件中使用ImageView如何在Android Studio上制作圆形图像视图,android,imageview,Android,Imageview,我知道有很多关于这个问题的例子,但我仍然无法完成以下内容,有没有一种简单的方法可以在android studio上创建circle ImageView?您可以使用外部库您不需要使用任何外部库来创建ImageView circle。使用此类使您的ImageView成为圆形 并在Java文件中使用ImageView your_imageview.setImageBitmap(new RoundImage( getApplicationContext()).transform(your_image_b
your_imageview.setImageBitmap(new RoundImage(
getApplicationContext()).transform(your_image_bitmap));
使用以下代码为ImageView创建位图到圆形位图:
your_imageview.setImageBitmap(new RoundImage(
getApplicationContext()).transform(your_image_bitmap));
public static Bitmap getRoundedRectBitmap(Bitmap bitmap, int pixels) {
Bitmap result = null;
try {
result = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(result);
int color = 0xff424242;
Paint paint = new Paint();
Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
paint.setColor(color);
int w = bitmap.getWidth();
int h = bitmap.getHeight();
int pl = 1;
int pr = 1;
int pt = 1;
int pb = 1;
int usableWidth = w - (pl + pr);
int usableHeight = h - (pt + pb);
int radius = Math.min(usableWidth, usableHeight) / 2;
int cx = pl + (usableWidth / 2);
int cy = pt + (usableHeight / 2);
canvas.drawCircle(cx, cy, radius, paint);
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
canvas.drawBitmap(bitmap, rect, rect, paint);
} catch (NullPointerException e) {
} catch (OutOfMemoryError o) {
}
return result;
}