补间动画是控件的基本显示/移动的动画,其分类有:
1. Alpha:透明度
2. Rotate:旋转
3. Scale:缩放
4. Translate:平移
【开发流程】
1. 对项目的res文件夹点击鼠标右键,选择New -> Android XML File,在弹出的对话框中,ResourceType选择Tween Animation,RootElement选择set(推荐),并为动画的配置文件命名
2. 在动画的配置文件中,添加动画节点,例如<alpha>节点,然后,在该节点中配置动画的核心属性
3. 在Activity中,使用AnimationUtils.loadAnimation()获取Animation对象,并调用控件的startAnimation()方法即可开始动画效果
【Alpha动画的核心属性】
fromAlpha / toAlpha:从/到什么样的透明度,取值为float类型,取值范围为0~1,其中0表示完全透明,1表示完全不透明
【Rotate动画的核心属性】
fromDegrees / toDegrees:从/到什么角度,取值为整形,每360表示旋转1圈,取值可以大于360,也可以小于0
pivotX / pivotY:旋转时的中心点坐标,取值通常使用百分比
【Scale动画的核心属性】
fromXScale / fromYScale / toXScale / toYScale:从/到水平/垂直方向上的缩放大小,取值通常使用百分比
pivotX / pivotY:同上
【Translate动画的核心属性】
fromXDelta / fromYDelta / toXDelta / toYDelta:从/到水平/垂直方向的什么位置,取值通常使用百分比,可以为负数
【通用属性】
duration:动画的持续时长,取值为以毫秒为单位的数值
startOffset:动画开始时间的偏移量,即过多少毫秒以后再开始执行动画效果
repeatCount:重复次数,取值为整形,默认的动画不计入重复次数之内,例如希望动画执行2次,则重复次数是1次
repeatMode:重复模式,取值为restart,每次重复时都会重新执行动画效果,取值为reverse,每次重复时都会逆向执行前次动画的效果,该属性在没有设置重复次数之前是无效的
【根节点属性】
fillAfter:是否保留动画后的显示效果,取值为true表示保留,反之则还原回控件的默认状态
interpolator:动画的加速度,@android:anim/accelerate_decelerate_interpolator表示先加速后减速,@android:anim/accelerate_interpolator表示始终加速度,@android:anim/decelerate_interpolator表示减速度