Java 如何在android运行时为imageview提供一个半径角点

Java 如何在android运行时为imageview提供一个半径角点,java,android,imageview,Java,Android,Imageview,我感兴趣的是只为imageview的一个角指定半径。我使用下面的代码为imageview提供圆角,但它在所有四个角上都有效,我只希望一个角被圆角 Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888); Canvas canvas = new Canvas(output); final int color = 0xff424242; final Paint pain

我感兴趣的是只为imageview的一个角指定半径。我使用下面的代码为imageview提供圆角,但它在所有四个角上都有效,我只希望一个角被圆角

Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888);
Canvas canvas = new Canvas(output);

final int color = 0xff424242;
final Paint paint = new Paint();
final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
final RectF rectF = new RectF(rect);
final float roundPx = pixels;

paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
paint.setColor(color);
canvas.drawRoundRect(rectF, roundPx, roundPx, paint);

paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
canvas.drawBitmap(bitmap, rect, rect, paint);

您可以尝试以下操作:
1.扩展图像视图
2.重写onDraw方法

a。创建剪辑路径对象(路径类对象clipPath)
B定义剪裁区域(clipPath.addArc)
C将剪辑路径设置为画布

D调用super.Ondraw(Canvas)

你需要使用
Path#addRoundRect
你能推荐一些代码吗?是的,我建议你如何知道剪辑的边界?检查一下,了解剪辑你的链接与剪辑无关,是的,我知道如何使用Canvas剪辑,我问你如何知道要在自定义ImageView中剪裁的区域?我想用圆弧和矩形定义完整的路径。