の角をトリミングする必要がありImageView
ます。それらを丸めるのではなく、各コーナーから三角形を消去します。
これを行う唯一の方法は、メソッドをオーバーライドし、onDraw
を使用してキャンバスからこれらの領域を消去することPath
です。問題は、無地の背景がないため、これらの領域を消去する必要がありますが、色で塗りつぶす必要はありません。
そのために次のコードを使用します。
@Override
protected void onDraw(Canvas canvas) {
Path path = new Path();
path.moveTo(0, 0);
path.lineTo(20, 0);
path.lineTo(0, 20);
path.close();
Paint paint = new Paint();
paint.setAntiAlias(true);
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR));
canvas.drawPath(path, paint);
super.onDraw(canvas);
}
ただし、角は黒くなりますが、透明にはなりません。私たちを手伝ってくれますか?または、おそらくあなたは私の仕事のためのより良い解決策を知っています. これがどのように見えるかです。