如何在画布上绘制动画?(Android)

4

当用户触摸屏幕时,我想在画布上显示动画。我知道基础知识以及如何将位图绘制到画布上,但是我找不到关于在画布上绘制或显示动画的好方法。我将使用逐帧动画,并且它将出现在用户触摸的相同位置,因此我无法使用ImageView。

1个回答

7

不确定是否有内置的方法来实现这个。但是将位图加载到数组中非常简单。

然后调用invalidate(),你的onDraw()方法应该使它本身无效,在下一次运行时计算要显示的帧(通过计算上一帧显示的时间)。每次播放一帧时,增加帧计数器并重置时间计数器。

您可以使用可变延迟,并且很容易实现。


谢谢你的回答。在提问之前我尝试过这个方法,但是当我从一个for循环中调用invalidate()时,它只会使屏幕无效一次,并且只显示第一帧。 - Tony
你必须在onDraw()方法内调用invalidate()或postInvalidate(),以便重新绘制。 - Miguel Morales

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接