Android动画机制

IT
  1. 1. Android3.0之前
    1. 1.1. Android3.0
      1. 1.1.1. 工作逻辑
    2. 1.2. ValueAnimator类
    3. 1.3. ObjectAnimator类
    4. 1.4. Android4.4

Android3.0之前

  • 逐帖动画(Frame animation)
    按照各帖设置的时间顺序播放图片
  • 补间动画(Tween animation)
    只需定义动画的开始和结束这两个关键帖,并指定动画的时间和方式,交由Android系统进行计算。只改变了View的绘制效果,没有改变其真实属性
动画类型 说明
AlphaAnimation 透明度
ScaleAnimation 缩放
TranslateAnimation 平移
RotateAnimation 旋转

Android3.0

  • 属性动画
    在一定时间间隔内,通过不断对值进行改变,并不断将该值赋给对象的属性,从而实现该对象在该属性上的动画效果,可作用于任意Java对象(厉害了)

工作逻辑

插值器(Interpolator)决定 值 的变化模式(匀速、加速blabla)

估值器(TypeEvaluator)决定 值 的具体变化数值

ValueAnimator类

  • 定义:属性动画机制中 最核心的一个类
  • 实现动画的原理:通过不断控制值的变化,再不断手动赋给对象的属性,从而实现动画效果。

ObjectAnimator类

  • 直接对对象的属性值进行改变操作,从而实现动画效果
  • 继承自ValueAnimator类,即底层的动画实现机制是基于ValueAnimator类

Android4.4

过度动画,Transition Framework 核心就是根据Scene(场景,下文解释)的不同帮助开发者们自动生成动画

Android Transition