本系列文章主要介绍了OPhone 2.0 SDK提供的两种实现2D动画的方式:帧动画和补间动画。文章的每个知识点都提供了精彩的实例以向读者展示2D动画的具体实现方法。通过对本系列文章的学习,读者可利用2D动画实现非常绚丽的界面效果。
相关阅读:
旋转补间动画
通过标签可以定义旋转补间动画。下面的代码定义了一个标准的旋转补间动画。
通过RotateAnimation类的构造方法可以设置旋转开始角度(fromDegrees)、旋转结束角度(toDegrees)、旋转支点横坐标(pivotX)和旋转支点纵坐标(pivotY)。
旋转补间动画实例
本例实现了两颗行星绕着一颗恒星旋转的效果。其中恒星会顺时针和逆时针交替旋转(android:repeatMode属性值为reverse)。效果如图1所示。

图1 旋转的星系
两颗行星和一颗恒星分别对应于一个动画文件。行星对应的两个动画文件的内容如下:
透明度补间动画
通过标签可以定义透明度补间动画。下面的代码定义了一个标准的透明度补间动画。
透明度补间动画实例
本例将前面介绍的多种动画效果进行结合实现了投掷炸弹,并爆炸的特效。在本例中采用的动画类型有帧动画、移动补间动画、缩放补间动画和透明度补间动画。
其中使用了帧动画播放了一个爆炸的GIF动画;使用移动补间动画实现了炸弹被投下仍然会向前移动的偏移效果;缩放补间动画实现了当炸弹被投下时逐渐缩小的效果。透明度补间动画实现了炸弹被投下时逐渐模糊的效果。当运行本例后,会在屏幕下方正中间显示一个炸弹,如图2所示。然后触摸这个炸弹,炸弹开始投掷,逐渐变小和模糊,如图3所示。当炸弹变得很小、很模糊时,会播放GIF动画来显示爆炸效果,并播放爆炸的声音。如图4所示。

图2 初始状态的炸弹
图3 炸弹逐渐变小和模糊

图4 炸弹爆炸的效果
本例的实现代码如下:
总结
本文主要介绍了旋转补间动画和透明度补间动画。通过将四种补间动画结合使用,可以实现非常有趣的动画效果。