前言:我们有时候为了fragment切换动画流畅度,需要在动画结束后才执行刷新UI操作,这样就需要监听fragment动画切换状态
方案:重写fragment的onCreateAnimation方法,实现onAnimationRepeat(动画循环)、onAnimationEnd(动画结束)、onAnimationStart(动画开始方法)
open class BaseFragment : Fragment(), Animation.AnimationListener {
override fun onCreateAnimation(transit: Int, enter: Boolean, nextAnim: Int): Animation {
val animat = AnimationUtils.loadAnimation(activity, nextAnim)
animat.setAnimationListener(this)
return animat
}
override fun onAnimationRepeat(animation: Animation?) {}
override fun onAnimationEnd(animation: Animation?) { }
override fun onAnimationStart(animation: Animation?) {}
}