透明动画
fun startAlpha(view: View){
val alphaAnimator = ObjectAnimator.ofFloat(view,"alpha", 1f,0f,1f)
alphaAnimator.duration = 1000
alphaAnimator.start()
}
旋转动画
fun startRotate(view: View){
val rotateAnimator = ObjectAnimator.ofFloat(view,"rotation", 0f,360f)
rotateAnimator.duration = 1000
rotateAnimator.start()
}
位移动画
fun startTranslateX(view: View){
val currentX: Float= view.translationX
val translateXAnimator = ObjectAnimator.ofFloat(view,"translationX",currentX,-500f,currentX,500f,currentX)
translateXAnimator.duration = 1000
translateXAnimator.start()
}
缩放动画
fun startScale(view: View){
val rotateAnimator = ObjectAnimator.ofFloat(view,"scale", 0.2f,2f)
rotateAnimator.duration = 2000
rotateAnimator.start()
}
动画监听
alphaAnimator.addListener(object : Animator.AnimatorListener {
override fun onAnimationStart(animation: Animator) {
}
override fun onAnimationEnd(animation: Animator) {
/**
* 大部分情况下,我们都要监听的是这个,在动画结束后,执行什么操作
* 这里,我们只弹出一个Toast。
*/
Toast.makeText(this@MainActivity, "动画执行结束", Toast.LENGTH_SHORT).show()
}
override fun onAnimationCancel(animation: Animator) {
}
override fun onAnimationRepeat(animation: Animator) {
}
})