M 4 6 L 22 2 L 2 22 L 19.5 3.5 L 4 6
您可以在此处查看有关 M, L, Z 命令的更多信息 https://dev59.com/L1oV5IYBdhLWcg3wIbtT#42138513
还可以将填充颜色设置为所需颜色。
对于最近创建的路径的左下角或路径名称旁边的右上角,选择秒表并添加 pathData 动画。
对于第一个动画设置
startTime = 0
endTime = 100 //CHANGE THIS BASE ON YOUR NEEDS
interpolator = Linear
fromValue = M 4 6 L 4 6 L 4 6 Z
toValue = M 4 6 L 22 2 L 19 3.5 Z
然后添加另一个动画(在底部左下角的添加pathData动画上有加号符号),并设置下一个数值。
startTime = 100 //CHANGE THIS BASE ON YOUR NEEDS
endTime = 200 //CHANGE THIS BASE ON YOUR NEEDS
interpolator = Linear
fromValue = M 4 6 L 22 2 L 19 3.5 Z M 22 2 L 22 2 L 19 3.5 Z
toValue = M 4 6 L 22 2 L 19 3.5 Z M 22 2 L 2 22 L 19 3.5 Z
接下来针对白色部分添加两条新路径。在顶部设置pathData为以下内容:
M 9 7.5 L 11.5 11 L 12.5 10 L 10.5 7.5 Z
M 13 12.5 L 15.5 15.5 L 17 15.5 L 14 11.5 Z
Drawable drawable = imageView.getDrawable();
if( drawable instanceof AnimatedVectorDrawable ) {
AnimatedVectorDrawable animation = (AnimatedVectorDrawable) drawable;
animation.start();
}
fromValue
和toValue
动画参数的? - androidXPfromValue
和 toValue
需要具有相同数量和类型的绘图命令。因此,在第一条动画路径中,我知道我需要在 fromValue
和 toValue
路径中拥有 3 个点。正如您在 fromValue = M 4 6 L 4 6 L 4 6 Z
中所看到的,这些点从相同的坐标 4(x) 6(y) 开始,并且在 toValue = M 4 6 L 22 2 L 19 3.5 Z
中,我将第二个和第三个点移动到最终路径坐标。在第二个动画中,我执行相同的逻辑,唯一的区别是将第一个动画的最终路径包含在第二个动画的 fromValue
和 toValue
路径中。 - ApolloPath
是因为 Path
会将对象从一个位置移动到另一个位置以产生动画效果。而你的视频是在动画中创建对象(绿色部分)的一部分。所以你有两个选择。
选项1
创建一个 SVG 并将其作为动态向量图形添加到你的代码中。你可以使用在线工具将视频转换为 SVG。然后将该 SVG 添加到你的 drawables
中,并创建一个 pathmorph
XML 将颜色从黑色变为绿色。示例请参见 [Android 开发者网站][1]
。ImageView imageView = (ImageView) findViewById(R.id.imageView);
Glide.with(this).asGif().load(R.raw.image_gif).into(imageView);