温馨提示×

android drawroundrect的代码示例

小樊
82
2024-11-23 06:32:13
栏目: 编程语言

在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对象,表示绘制样式和颜色。

0