1. 补间动画(Tween)
操作某一个控件让其实现平移,旋转,缩放以及透明度转换的动画,如果有学过CSS的人应该会清楚,就是类似那样的动画。先设定好动画的效果和时长,再调用后进行动画。
- 效果比较有限,只能实现平移,旋转,缩放以及透明度四种,也没有CSS那么强大,比如说平移旋转都是没有Z轴的。只能实现简单的动画。
- 动画的效果只是一个演示上的效果,实际控件的状态并没有改变。比如说让按钮从左上角移动到右下角后,点击右下角的按钮是没有反应的,要点击按钮原来在左上角所在的位置。
2. 帧动画(Frame)
让图片根据一定的顺序逐渐展示出来的动画,本质上是复数图片的切换。就很像是那种翻书动画一样的感觉。
- 一般用在看上去无法用代码实现的动画上。
- 由于动画需要很多的图片,所以占用空间很大。
3. 属性动画(ObjectAnimator/ValueAnimator)
Android3.0后才支持的动画效果,通过Java代码实现动画效果。且这次动画效果不仅局限于UI控件,可以给任何对象执行动画。
- 相比补间动画,属性动画的机能更加完善,支持的动画属性也更多(动画重复次数啊,刷新速率等)。
- 且动画会实际的改变对象的属性,比如说让按钮从左上角移到右下角,那么它就真的到了右下角了。
但是Android3.0以下才能用,低版本会有兼容问题(不过现在应该也没有3.0以下的手机了吧)
参考材料
Android 动画总结 - 简书
https://www.jianshu.com/p/609b6d88798d