Android属性动画(二):VauleAnimator和ObjectAnimator的监听
1、ValueAnimator可以用来对动画发生过程中的数值进行监听,从而方便实时处理:
ValueAnimator animator = ValueAnimator.ofFloat(0,100);
animator.setTarget(view);
animator.setDuration(1000).start();
animator.addUpdateListener(new AnimatiorUpdateListener(){
@Override
public void onAnimationUpdate(ValueAnimator animation) {
Float value = https://www.it610.com/article/(Float) animation.getAnimatedValue();
//获得当前动画数据
// TODO use the value
}
});
2、ObjectAnimator也有监听的adapter:
ObjectAnimator animator = ObjectAnimator.ofFloat(view, "translateX", 0, 2);
animator.addListener(new Animator.AnimatorListener(){
@Override
public void onAnimationStart(Animator animation) {
}
@Override
public void onAnimationEnd(Animator animation) {
}
@Override
public void onAnimationCancel(Animator animation) {
}
@Override
public void onAnimationRepeat(Animator animation) {
}
});
大多数情况我们只想对onAnimationEnd进行操作,这样的话可以选择new一个Adapter:
animator.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animaton){
super.onAnimationEnd(animation);
}
});
也可以选择其他重写的方法,很灵活。
【Android属性动画(二):VauleAnimator和ObjectAnimator的监听】
推荐阅读
- 第6.2章(设置属性)
- android第三方框架(五)ButterKnife
- Android中的AES加密-下
- 带有Hilt的Android上的依赖注入
- android|android studio中ndk的使用
- Android事件传递源码分析
- RxJava|RxJava 在Android项目中的使用(一)
- Android7.0|Android7.0 第三方应用无法访问私有库
- 深入理解|深入理解 Android 9.0 Crash 机制(二)
- android防止连续点击的简单实现(kotlin)