Android: CustomView Circle Stroke 不平滑

Android: CustomView Circle Stroke not smooth

我的 onDraw 方法中有以下代码:

canvas.drawArc(rect, -90, 360, true, bgpaint);
if(isFocussed)
            canvas.drawArc(rect, -90, 360, true, strokePaint);

对于 strokePaint,这是我的 init() 方法中的内容:

strokePaint = new Paint();
strokePaint.setColor(Color.YELLOW);
strokePaint.setAntiAlias(true);        
strokePaint.setStyle(Paint.Style.STROKE);
strokePaint.setStrokeWidth(2);

每当 strokePaint 起作用时,圆形笔触不平滑。笔画在上、下、左、右一点点变平。

我该如何解决这个问题?

问题圈截图:

绘图时必须考虑笔划宽度。 把你的形状缩小一半就可以了。

虽然根据您的代码我不能肯定地说,但我只是认为您在视图范围之外绘制。这是一个常见问题。

试试这个 setAntiAlias(true)setStrokeCap(Paint.Cap.ROUND)