android 补间动画 属性动画 总结

1.补间动画无需逐一定义每一帧,只要定义开始、结束的帧,和指定动画持续时间。
补间动画有4种(均为Animation抽象类子类):
AlphaAnimation(透明度,0~1)
ScaleAnimation(大小缩放,X、Y轴缩放,还包括缩放中心pivotX、pivotY)
TranslationAnimation(位移,X、Y轴位移)
RotateAnimation(旋转,包括缩放中心pivotX、pivotY)

public void move(View view){
//定义一个位移补间动画,X轴从0变化到100,Y轴不变
TranslateAnimation animation = new TranslateAnimation(0, 200, 0, 0);
//设置动画持续时间
animation.setDuration(1000);
//设置动画结束后效果保留
animation.setFillAfter(true);
//控制动画先慢后快
animation.setInterpolator(new AccelerateInterpolator());
//找到对象,开启动画
mImageView = (ImageView) findViewById(R.id.imageView1);
mImageView.startAnimation(animation)

指定3个信息后,动画是匀速的,效果同逐帧动画。上例中还有一个属性,可以控制速度,即为Interpolator(插值),有以下几种(Interpolator的实现类):LinearInterpolator(匀速)
AccelerateInterpolator(先慢后快)
AccelerateDecelerateInterpolator(先慢中快后慢)
DecelerateInterpolator(先快后慢)
CycleInterpolator(循环播放,速度为正弦曲线)
AnticipateInterpolator(先回撤,再匀速向前)
OvershootInterpolator(超过,拉回)
BounceInterpolator(回弹)
不仅可以在代码中创建Animation对象,很多情况下,是采用动画资源文件来定义补间动画。资源目录:res/anim/anim.xml

你可能感兴趣的:(android,动画)