Android中使用Path.arcTo()绘制圆环时的奇怪行为
我已经实现了一个动画绘制环开始扫角0至360成功。 然而,当环的尾部以360度角与头部相交时,所有的图形都消失了 这是我在Android中使用Path.arcTo()绘制圆环时的奇怪行为,android,drawing,android-custom-view,Android,Drawing,Android Custom View,我已经实现了一个动画绘制环开始扫角0至360成功。 然而,当环的尾部以360度角与头部相交时,所有的图形都消失了 这是我在onDraw() 这就是结果 请注意,在它变成圆形之前,我将sweepAngle设置为-359。 但是,如果我将“扫描角度”更改为-360。它产生了这个结果 它消失了!! 谁知道怎么解决这个问题,请帮帮我 谢谢 另外,我不想使用drawArc(),因为我想在环内打个洞。有了drawArc(),我的按钮就不见了。我想android在真正绘制之前会修改360。所以x-360=
onDraw()
这就是结果
请注意,在它变成圆形之前,我将sweepAngle设置为-359。
但是,如果我将“扫描角度”更改为-360。它产生了这个结果
它消失了!!
谁知道怎么解决这个问题,请帮帮我
谢谢
另外,我不想使用
drawArc()
,因为我想在环内打个洞。有了drawArc(),我的按钮就不见了。我想android在真正绘制之前会修改360。所以x-360==x
它不会画任何东西 我已经晚了,但是我通过添加一个实心圆作为动画的最后一帧解决了这个问题(我使用的是AnimationDrawable,但在本例中的想法是相同的)。最后一帧的所有绘制代码都相同,除了一行:
替换:
mPath.arcTo(rectF, startAngle, sweepAngle);
比如:
mPath.addCircle(cenX, cenY, innerRadius, Path.Direction.CCW);
我认为是这样。。。。那么我们唯一能做的就是使用另一张图纸绘制sweepAngel=360。像凯文said@SaintTail,这指出了问题所在,但没有说明如何克服它。为什么这是公认的答案?
mPath.addCircle(cenX, cenY, innerRadius, Path.Direction.CCW);