ObjectAnimator简单用法例子:
ObjectAnimator().ofFloat(view,"alpha",0.1f,0.8f,0.5f,1.0f).setDuration(800).start();
ofFloat()的参数:
第一个参数:控件
第二个参数:动画形式,注意:参数为字符串类型,不能写错。
rotationX rotationY 旋转
scaleX scaleY 缩放
translationX translationY 平移
X Y 坐标
alpha 透明度
第三个到第六个:第3~n个参数为动画路径
监听事件:
ObjectAnimator oa = new ObjectAnimator().ofFloat(view,"rotationY",100,30,500,320).setDuration(800);
//事件监听
oa.addListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animator) {
}
@Override
public void onAnimationEnd(Animator animator) {
Toast.makeText(MainActivity.this,"动画结束",Toast.LENGTH_SHORT).show();
}
@Override
public void onAnimationCancel(Animator animator) {
}
@Override
public void onAnimationRepeat(Animator animator) {
}
});
oa.start();
注意
不能写成
ObjectAnimator oa = new ObjectAnimator();
oa.ofFloat(view,"rotationY",100,30,500,320).setDuration(800);
否则会崩溃。