Android:如何在背景图像上添加动画

时间:2011-08-24 13:51:48

标签: android animation

我想要做的是有一个背景图片,为了简单起见,让我们说这是一张房子前面的照片。然后,我想让一个红球从一个窗口移动到另一个窗口。

**我想要一张背景图片和一张照片。

**然后我希望能够准确地告诉顶部图片去哪里。

我该怎么做?

我刚刚开始了解Android中的动画,并且还没有尝试过任何方式。

1 个答案:

答案 0 :(得分:0)

Android中有两种动画方式:Canvas和OpenGL ES。 我建议OpenGL用于任何需要平滑和速度的东西,比如移动球。 您应该使用帮助程序类GLSurfaceView创建一个视图 http://android-developers.blogspot.com/2009/04/introducing-glsurfaceview.html,并实施Renderer

我假设您已将图像保存在res/drawable文件夹中,格式为png,并且球文件包含Alpha通道。

您可以在线查看许多教程,但基本上您需要在onSurfaceCreated加载背景图片和球资源,并使用GLUtils.texImage2D将其存储在纹理中。

onDrawFrame方法中,您应该设置一个2D投影,例如glOrtho2D,然后绘制背景。

然后在绘制球纹理之前,您可以使用glTranslate(x,y,0)功能将球移到球屋上方。使用alpha混合球:

glBlendFunc(GL_SRC_ALPHA, GL_SRC_ONE_MINUS_ALPHA);
glEnable(GL_BLEND);

不幸的是,在OpenGL中写作并不像你希望的那样简单。尽管您只想要2D图像,但一切都是通过3D坐标完成的。但希望这能为你提供足够的信息来获得丰富的exmaples,这些信息很丰富!