setAnimationListener
设置动画监听器
示例:
import "android.view.animation.*"
animate.setAnimationListener(Animation.AnimationListener {
onAnimationStart = function(animation)
print "动画开始"
end,
onAnimationEnd = function(animation)
print "动画结束"
end,
onAnimationRepeat = function(animation)
print "动画重复"
end
})
setDuration
设置动画的持续时间,不能设置负数,单位为毫秒
示例:
animate.setDuration(3000)
setFillEnabled
启动动画转换应用,即开启它,再通过设置setFillBefore或setFillAfter可以控制控件动画完后停留在动画开始的位置还是动画完成的位置
示例:
animate.setFillEnabled(true)
--使控件保留在动画完成时的位置
animate.setFillAfter(true)
setInterpolator
设置插值器,即控制你的动画速率。
常见的插值器有:
差值器 | 描述 |
---|---|
AccelerateDecelerateInterpolator | 一个开始和结束缓慢但中间加速的插值器 |
AccelerateInterpolator | 一个开始缓慢然后加速的插值器 |
AnticipateOvershootInterpolator | 一个插值器,它开始向后,然后向前,超过目标值,最后回到最终值 |
BounceInterpolator | 一个在末端反弹的插值器 |
CycleInterpolator | 重复指定周期数的动画。变化率呈正弦曲线 |
DecelerateInterpolator | 一个开始很快然后减速的插值器 |
LinearInterpolator | 变化率为常数的插值器 |
OvershootInterpolator | 一个内插器,向前移动并超过最后一个值,然后返回 |
示例:
import "android.view.animation.*"
animate.setInterpolator(AccelerateDecelerateInterpolator())
setRepeatCount
设置动画应该重复的次数。如果重复计数为0,则不会重复动画。如果重复计数大于0或无穷大,则将考虑重复模式。默认情况下重复计数为0。设置为-1为无限循环
setRepeatMode
定义动画结束时应该做什么。此设置仅在setRepeatCount大于0或-1时应用。默认为RESTART。
- 设置为1是RESTART,即从头开始重复动画
- 设置为2是REVERSE,即反复重复动画
setStartOffset
这个动画应该何时开始。这在使用AnimationSet组合复杂动画时非常有用。接收的值为int,单位为毫秒