首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在android中沿着定义的路径移动图像

在android中沿着定义的路径移动图像
EN

Stack Overflow用户
提问于 2013-07-16 17:16:09
回答 1查看 81关注 0票数 0

我正在制作一个教幼儿园孩子学习数字的学习游戏。它需要一些动画,如this,但我无法在画布中顺利实现此动画。

我希望使用这条虚线显示完全相同的动画。

请指导我执行这种类型的动画。

EN

回答 1

Stack Overflow用户

发布于 2013-07-16 17:28:39

您需要的是:

  • a loop
  • path definition

循环应该更新当前图像的位置和旋转。然后在屏幕上绘制更新后的动画。您可以只覆盖dispatchDraw方法,并在它的最后调用invalidate。您可以在绘图前立即更新位置。您的案例类似于游戏编程,因此您可以查找有关游戏循环的文章。

路径定义应允许您根据时间计算位置。例如,您可以使用Bezier曲线。Bezier曲线方程是参数化的,参数是'time‘。使用动画时间可以沿路径平滑移动。

通用游戏循环示例:http://www.gameprogblog.com/generic-game-loop/

贝塞尔曲线:http://en.wikipedia.org/wiki/B%C3%A9zier_curve

代码语言:javascript
复制
long time = System.currentTimeMillis();
protected void dispatchDraw(Canvas canvas) {
    PointF pos = getBezierPos(System.currentTimeMillis() - time);
    drawImage(pos);
    invalidate();
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17672534

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档