android画布未绘制圆弧
我试图在画布上以这种方式绘制一条弧线:android画布未绘制圆弧,android,Android,我试图在画布上以这种方式绘制一条弧线: canvas.drawArc(getCircleRect(), 90, 270, true, PaintCreator.createStrokePaintForArc()); 。。但没有明显的效果 从getCircleRect()得到的Rect的边界是正确的,我可以这样绘制Rect(只是为了测试): 知道为什么drawRect工作而drawArc不工作吗? 塔克斯 我不确定,但我认为你的油漆对象可能是问题所在。 试试这个 嗨,布莱森,不幸的是你的油漆没
canvas.drawArc(getCircleRect(), 90, 270, true, PaintCreator.createStrokePaintForArc());
。。但没有明显的效果
从getCircleRect()得到的Rect的边界是正确的,我可以这样绘制Rect(只是为了测试):
知道为什么drawRect工作而drawArc不工作吗?
塔克斯
我不确定,但我认为你的油漆对象可能是问题所在。 试试这个
嗨,布莱森,不幸的是你的油漆没用。整个绘制调用都在自定义视图类的onDraw(画布)中。
canvas.drawRect(getCircleRect(), PaintCreator.createStrokePaintForArc());
@Override
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.save();
// not working
canvas.drawArc(getCircleRect(), 90, 270, true, PaintCreator.createFillPaintArc());
// working well
canvas.drawRect(getCircleRect(), PaintCreator.createStrokePaintForArc());
// working well
canvas.drawCircle(x, y, RADIUS, fillPaint);
move = false;
canvas.restore();
}
Paint mBgPaints = new Paint();
mBgPaints.setAntiAlias(true);
mBgPaints.setStyle(Paint.Style.FILL);
mBgPaints.setColor(Color.BLUE);
mBgPaints.setStrokeWidth(0.5f);
canvas.drawArc(getCircleRect(), 90, 270, true, mBgPaints);