在Android中,要使用drawRoundRect
方法绘制圆角矩形,你需要在自定义的View类中重写onDraw
方法。以下是一个简单的代码示例:
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.view.View;
public class RoundRectView extends View {
private Paint paint;
private RectF rectF;
public RoundRectView(Context context) {
super(context);
init();
}
public RoundRectView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public RoundRectView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init();
}
private void init() {
paint = new Paint();
paint.setColor(0xFF000000); // 设置颜色为黑色
paint.setAntiAlias(true); // 设置抗锯齿
paint.setStyle(Paint.Style.FILL); // 设置填充样式
rectF = new RectF();
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// 设置圆角半径
float cornerRadius = 50f;
rectF.set(50, 50, getWidth() - 50, getHeight() - 50);
canvas.drawRoundRect(rectF, cornerRadius, cornerRadius, paint);
}
}
在这个示例中,我们创建了一个名为RoundRectView
的自定义View类。在init
方法中,我们初始化了一个Paint
对象和一个RectF
对象。Paint
对象用于设置绘制样式和颜色,RectF
对象用于存储圆角矩形的坐标和大小。
在onDraw
方法中,我们使用canvas.drawRoundRect()
方法绘制圆角矩形。drawRoundRect()
方法接受四个参数:一个RectF
对象,表示圆角矩形的坐标和大小;两个float
值,表示圆角半径;一个Paint
对象,表示绘制样式和颜色。