为什么Android canvas中的drawArc方法不提供具有绘画风格的平滑圆作为STROKE?

时间:2018-08-10 13:39:58

标签: android android-layout android-canvas android-custom-view custom-view

我一直在用自定义视图在android中创建仪表图。 最初,我尝试绘制一个半圆,效果很好。当我尝试用一​​种颜色将内容拆分为45度,另一种颜色将其拆分为另一种颜色时,两个弧之间存在不一致(小的空白)。 我以前用STROKE绘制了两个绘画风格的弧线。在这两种情况下,半径值和界限均不会更改。如何删除两个弧之间的空白?

@Override
public void draw(Canvas canvas) {
    super.draw(canvas);

    paint.setStrokeWidth(radius * 0.3f);
    paint.setStyle(Paint.Style.STROKE);
    paint.setColor(Color.RED);
    canvas.drawArc(contentRect, 180, 45, false, paint);
    paint.setColor(Color.BLACK);
    canvas.drawArc(contentRect, 225, 135, false, paint);
}

enter image description here

0 个答案:

没有答案