android开发艺术探索第四章心得(Android动画深入分析 )

android动画分为View动画和属性动画.

view动画

view动画的有四个类型TranslateAnimation(移动),ScaleAnimation(缩放),RotateAnimation(旋转),AlphaAnimation(渐变)
view动画还可以在一些特殊的场景中使用,比如在ViewGroup中可以控制子元素的出场效果.LayoutAnimation作用于ViewGroup为其子元素制定一些动画

属性动画

属性动画是API11新加入的特性,和View动画不同,它的作用对象进行了扩展,属性动画可以对任何对象做动画,甚至可以没有对象.
ObjectAnimator继承自ValueAnimator
ValueAnimator 类是先改变值,然后 手动赋值 给对象的属性从而实现动画;是 间接 对对象属性进行操作;
ObjectAnimator 类是先改变值,然后 自动赋值 给对象的属性从而实现动画;是 直接 对对象属性进行操作;

VlaueAnimator例子:

ValueAnimator colorAnimation=ObjectAnimator.ofInt(this,"backgroundColor",Red,Blue);
colorAnimation.setDuration(3000);
colorAnimation.setEvaluator(new ArgbEvalutor());
colorAnimation.start();

ObjectAnimator 例子:

ObjectAnimator.ofFloat(imageView, "rotationX", 0f, 360f).setDuration(300).start();

自定义 的属性动画都基本要实现typeEvaluator,目的是告诉动画该怎么执行.ObjectAnimator还可以自定义属性操作,如rotationX这些是系统自带的,对于任何一个obj,只要定义好其属性的get和set方法就可以实现相应的属性操作

你可能感兴趣的:(android开发艺术探索第四章心得(Android动画深入分析 ))