Android< 21:使用椭圆弧时动画矢量闪烁" A"标志

时间:2017-01-05 14:18:06

标签: android svg vector

当我绘制一个带有椭圆弧的矢量图形时," A"登录< 21 Android版本,动画时会闪烁。

这在Android上闪烁/闪烁< 21。

<path
    android:name="v"
    android:fillColor="#000000"
    android:pathData="M 116 29 A 44,43,0,1,0,116,115 A 44,43,0,1,0,116,29 Z"
    />

在所有Android版本上,这都很好(没有椭圆弧和#34; A&#34;符号),动画相同:

<path
  android:name="v"
  android:fillColor="#000000"
  android:pathData="M 165.857 147.399 L 186.099 148.062 L 193.305 331.468 L 173.062 330.805 Z" />

动画=旋转。

可能是什么问题?它与渲染椭圆弧的速度有关吗?

2 个答案:

答案 0 :(得分:1)

可能。 Android Path类没有与SVG行为完全匹配的椭圆弧方法。因此,必须将SVG弧转换为一个或多个贝塞尔曲线。

我不确定这是否是导致问题的原因。它还取决于你正在做什么样的动画。我不会想到简单的旋转会导致路径被重建。

答案 1 :(得分:0)

正如LeBeau所解释的那样,拱门的渲染很慢。

我在Android上使用不同的矢量图像修复它&lt; 21.在这里,我将所有拱门改为20点多边形,渲染现在完美无缺。你很难看出差异:它是人眼的一个圆圈。没有更多的闪烁!