我无法弄清楚为什么我的动画矢量无效。我可以看到第一条路径,但我想要动画的第二条路径作为第一条路径的附加功能未显示。这就是我的代码的样子:
<?xml version="1.0" encoding="utf-8"?>
<animated-vector
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt">
<aapt:attr name="android:drawable">
<vector
android:height="24dp"
android:width="24dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0" >
<path
android:name="v"
android:strokeColor="#000000"
android:strokeWidth="3"
android:pathData="M6,11 l3.5, 4 l0, 0" />
</vector>
</aapt:attr>
<target android:name="v" >
<aapt:attr name="android:animation">
<set>
<objectAnimator
android:duration="1000"
android:propertyName="pathData"
android:valueFrom="M6,11 l3.5, 4 l0, 0"
android:valueTo="M6,11 l3.5, 4 l8, -7"
android:valueType="pathType"/>
</set>
</aapt:attr>
</target>
</animated-vector>
因此,M6,11 l3.5, 4 l0, 0
显示在屏幕上,但不显示M6,11 l3.5, 4 l8, -7
我尝试从google docs here底部复制示例,这确实有效。我的文件动画正确,如果我使用他们的代码告诉我,我确实正确地开始动画。这是我的路径数据的错字或错误吗?
答案 0 :(得分:1)
我在一个新项目中测试了我的绘图,令我惊讶的是它工作正常。
我在我的第一个项目中使用了com.android.support:design:25.1.0
,结果发现降级为com.android.support:design:24.2.0
使其正常工作。
经过多次测试后,我发现在app:srcCompat="@drawable/animated_vector"
上从android:src="@drawable/animated_vector"
更改为ImageView
也使其适用于com.android.support:design:25.1.0
。
我不确定最新情况,但现在至少可行。如果有人有更多详细信息,请告诉我。我认为我们假设使用srcCompat
用于矢量绘图。