如何使用cubicTo在Android中绘制带动画的贝塞尔曲线?

时间:2015-03-31 04:06:25

标签: android canvas android-animation android-drawable bezier

我一直在stackoverflow中搜索简单的示例和解决方案,但我找不到一个。所以,如果以前曾问过这个问题,我会问一个新的,并且道歉。

首先,我想创建一个使用贝塞尔曲线绘制日语汉字笔画的应用程序,我已经有1个起点,有3条曲线,例如:

M(11,54.25)

c(3.19,0.62)(6.25,0.75)(9.73,0.5)

c(20.64,-1.5)(50.39,-5.12)(68.58,-5.24)

c(3.6,-0.02)(5.77,0.24)(7.57,0.49)

我在互联网搜索过程中发现的是,看起来我可以使用Path.cubicTo()并使用canvas来绘制它(使用canvas.drawPath())。 而且,我希望画布以给定的帧速率或速度使用动画绘制它。

任何人都可以给我一个简单的例子或者一些线索或者我可以使用的任何东西吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

你可以在这里找到很好的例子:

http://www.jayway.com/2012/08/29/creating-custom-android-views-part-3-animating-your-custom-views-smoothly/

消息来源也在那里,所以非常容易。

您的方法很好 - 您在View的onDraw中基本上使用Path.cubicTo,并在更改输入坐标时使视图无效。您可以在另一个线程中执行此操作,或者在AnimatorUpdateListener中创建ValueAnimator并使视图无效。