Android动画体系
一. Frame Animation (逐帧动画)
xml资源位置: res/drawable/
标签: < animation-list>, < item>
Java类结构:
- AnimationDrawable
//添加动画帧
public void addFrame(Drawable frame, int duration);
//是否重复
public void setOneShot(boolean oneShot);
//开始动画
public void start();
//结束动画
public void stop();
二. Tween Animation (补间动画)
xml资源位置: res/anim/
xml标签: < alpha>, < translate>, < scale>, < rotate>, < set>
Java类架构:
Animation
AlphaAnimation: 渐变
TranslateAnimation: 平移
ScaleAnimation: 缩放
RotateAnimation: 旋转
AnimationSet: 混合动画
AnimationUtils
TimeInterpolator: 时间差值器
Interpolator
三. Property Animation (属性动画)
Property 动画是 Android SDK 3.0 以后加入的动画框架,是对Tween动画的扩展.
xml资源位置: res/animator/
xml标签: < objectAnimator>, < item>
Java类架构:
Animator
ValueAnimator
ObjectAnimator
TimeAnimator
自定义
AnimatorSet
Evalutor: 求值器
IntEvalutor
FloatEvalutor
ArgbEvalutor
TypeEvalutor
PropertyValuesHolder
TimeInterplator
四. Transition Animation (过度动画)
Transition 动画是Android SDK4.4之后引入的动画框架,是对 Property动画的补充和封装.
xml资源位置: res/transition/
xml标签: < transitionManager>, < transition>
Java类架构:
Transition
TransitionManager