2

我使用下面的代码来绘制视图

@Override

protected synchronized void onDraw(Canvas canvas) {
    super.onDraw(canvas);

    paint.setStyle(Style.STROKE);
    paint.setAntiAlias(true);

    RectF rectF = new RectF(0,0,30,30);
    RectF rectF1 = new RectF(200,0,230,30);
    canvas.drawArc(rectF, 270, 180, false, paint);
    canvas.drawArc(rectF1, 90, 180, false, paint);
    canvas.drawLine(15, 0, 215, 0, paint);
    canvas.drawLine(15, 30, 215,30, paint);

}

输出如下

在此处输入图像描述

但我想填充视图内的颜色。

如何做到这一点?

4

3 回答 3

0

使用 Path 而不是调用四次 drawLine/drawArc

于 2013-09-02T11:56:09.213 回答
0

我已经更改了我的 ondraw 代码。现在它的工作。

Path path = new Path();
path.arcTo(rectF, 270, 180);
        path.lineTo(200,30 );
        path.arcTo(rectF1, 90, 180);
        path.close();
        canvas.drawPath(path, paint);
于 2013-09-02T12:13:32.820 回答
0
paint.setStyle(Style.FILL);

祝你好运。

于 2013-09-02T12:15:58.907 回答