Android - 需要帮助ondraw()查看示例

时间:2013-09-02 11:38:04

标签: java android

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

@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);

}

输出如下

enter image description here

但我想在视图中填充颜色。

如何实现这一目标?

3 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

我已经改变了我的提取代码。现在它的工作。

Path path = new Path();
path.arcTo(rectF, 270, 180);
        path.lineTo(200,30 );
        path.arcTo(rectF1, 90, 180);
        path.close();
        canvas.drawPath(path, paint);

答案 2 :(得分:0)

paint.setStyle(Style.FILL);
祝你好运。