1.帧动画
1.1 准备图片资源
将准备好的一组图片资源放入drawable内。
1.2 创建动画xml文件
在drawable文件夹下创建xml文件,并在内创建一个animation-list对象,将每一张图片当成一个item存入。
其中duration是间隔时间。
1.3 绑定动画文件
通过xml或者代码,将该xml文件绑定为背景图片或者imgview的资源文件。
1.4 开启和停止动画
代码中获取绑定动画文件的view或者viewgrow,然后获取资源文件转换为AnimationDrawable对象,使用该对象的start()开启动画,使用stop()停止动画。
2.补间动画
2.1 alpha(透明度)
其中duration是间隔时间,fromAlpha为0是一开始为透明,toAlpha为1是后来为不透明
2.2 rotate(旋转)
其中duration是间隔时间,formDegrees一开始的角度,toDegrees是后来的角度,prvitoX和prvitoY是旋转的中心轴。
2.3 scale(缩放)
其中duration是间隔时间,prvitoX和prvitoY是缩放的中心轴,formXScale和formYScale是缩放前的大小,1为原来大小;
toXScale和toYScale是缩放后的大小,0.5为原来的一半。
2.4 translate(平移)
其中duration是间隔时间,fromXDelta和fromYDelta为初始值坐标位置,toXDelta和toYDelta为平移的距离坐标位置。
设置完xml文件后,通过上面图片的方式,给imageView开启动画。
3.属性动画
属性动画是指通过改变对象的属性来实现动画效果的一种方式。在 Android 中,我们通常使用 ValueAnimator 或 ObjectAnimator 来实现属性动画。
3.1 ValueAnimator
通过ValueAnimator对象实现值不断变大。
3.2 ObjectAnimator
可改变view的属性,如图实现textview字体又虚到实的结果。
补间动画和属性动画各有优势,补间动画比较简单,适合用于简单的动画效果;而属性动画功能更强大,可以实现更复杂的动画效果,并且可以动态改变控件的属性值。根据需要选择合适的动画类型。