Android动画

Android动画

动画类型

  • 视图动画(View Animation)
    1. 补间动画(Tween Animation)
    2. 逐帧动画(Frame Animation)
  • 属性动画(Property Animation)–Android3.0(API 11后的新特性)

视图动画(View Animation)

  • 作用对象:视图(View)
  • 具体分类:补间动画(Tween Animation) 逐帧动画(Frame Animation)

补间动画

  • 简介
    1. 作用对象:视图控件(View TextView Button),不可作用于View组件的属性,如:颜色、背景等。
    2. 原理:通过确定开始的视图样式和结束的视图样式,中间变化过程由系统不全来确定一个动画。注:结束的视图样式:平移、缩放、旋转、透明度样式。
    3. 动画类型:平移动画(Translate)、缩放动画(Scale)、旋转动画(Rotate)、透明度(Alpha)动画。
    4. 特点:使用简单方便(已经封装好基础动画效果);缺点:仅控制整体实体效果,无法控制属性。
    5. 应用场景:
      1. 视图中,标准、基础的动画效果;
      2. Activity、Fragment的切换效果;
      3. ViewGroup 中子元素的出场效果;
  • 分类
名称原理对应的Animation子类
平移动画(Translate)移动视图的位置TranslateAnimation类
缩放动画(Scale)放大、缩小 视图的大小ScalaAnimation类
旋转动画(Rotate)旋转试图的角度RotateAnimation类
透明度动画(Alpha)改变视图的透明度AlphaAnimation类

逐帧动画

  • 简介
    1. 作用对象:同补间动画
    2. 原理:将动画拆分为 帧的形式,且定义每一帧=每一张图片
    3. 特点:优:使用简单、方便;缺点:容易引起oom,因会使用大量&尺寸较大的图片资源
    4. 应用场景:较为复杂的个性化动画效果。

属性动画

属性动画(Property Animation)是Android3.0(API11)后才提供的一种全新的动画模式

- 作用对象:任意Java对象 不再局限于 视图View对象
- 原理:在一定时间间隔内,通过不断对值进行改变& 不对将该值赋给对象的属性,从而实现对该对象在该属性上的动画效果。可以是任意对象的任意属性
- 特点:作用对象进行了扩展,不只是View对象,甚至无对象也可以,动画效果丰富,不只是4种基本变化,
- 应用场景:与属性相关,更加复杂的动画效果。
- 具体使用:

使用类作用备注
ValueAnimator先改变值,然后手动赋值给对象的属性从而实现动画(间接 对对象的属性进行操作)本质是一种值的操作机制
ObjectAnimator先改变值,然后自动赋值给对象的属性从而实现动画(直接 对对象的属性进行操作)采用get() & set() 进行自动赋值
AnimatorSet实现组合动画
ViewPropertyAnimator采用对对象操作 实现属性动画
addListener()动画监听器,监听动画开始、结束、取消、重复 时刻可采用动画适配器(AnimatorListenerAdapter)按需监听动画时刻

区别

两类动画的根本区别在于:是否改变动画本身的属性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值