补间动画分为如下种
- Alpha 淡入淡出
- Rotate 旋转
- Translate 平移
这些动画是可以同时进行和顺次进行的。需要用到AnimationSet来实现。调用AnimationSet.addAnimation()即可。
实现方法举例:
该段代码实现了先平移,然后边缩小边淡出。
具体的代码实现需要注意各个参数所代表的含义,比较琐碎,建议阅读文档熟悉。在这里不做过多讲解,文档说的已经很清楚了。
文档连接
- 每一帧是一张png图片中
- 所有动画帧都存在一张png图片中
当然还有的专门的游戏公司有自己的动画编辑器,这里不加说明。
每一帧是一张png
说的就是这个效果:
在animation1.xml文件中进行如下配置:
在JAVA文件中我们进行如下加载:
所有动画在一张png中
说的就是这个效果:
animation.xml的配置:
其中:
- frame 指定在原图中截取的框大小;
- offeset 指定原图中心与截图中心偏移的向量;
- sourceColorRect 截取原图透明部分的大小
- sourceSize 原图大小
JAVA的加载方式与第一种方法相同。
在使用过程中一定要注意内存资源的回收和drawable的压缩,一不小心可能爆掉。
最后放一张demo: