Android最新动画框架完全解析(一)—— Animator(Property Animation)

本文介绍了Android 3.0引入的Animator框架,它比传统的View Animation更灵活,官方推荐使用。详细讨论了Property Animation的Duration、Time Interpolation等属性,ValueAnimator和ObjectAnimator的使用,以及AnimatorSet的组合播放。还提到了在XML中声明动画的方法,并对比了Property Animation与View Animation的区别。下篇将探讨如何通过Transitions Framework同时对多个Object进行动画。
摘要由CSDN通过智能技术生成

Animator最早出现在Android 3.0 中,和之前的Animation框架相比,Animator更加的灵活并且具有更多的功能,官方推荐使用Animator代替Animation。
使用Animator前需要先了解几个属性:

  • Duration:动画播放时间
  • Time interpolation:属性值随着时间的改变情况,比如线性增长或者先快后慢
  • Repeat count:动画重复播放次数
  • Animator sets:动画集,可以使多个动画同时播放或者顺序播放
  • Frame refresh delay:动画每一帧的刷新时间,一般默认10ms刷新一次

Property Animation

Property Animation非常强大,他可以让你几乎在任何东西上播放动画。Property Animation的结构如下图:

ValueAnimator用来跟踪动画运行的时间和属性的值。其中TimeInterpolator指定了动画的 interpolation,如AccelerateDecelerateInterpolator。TypeEvaluator指定属性的值如何计算比如IntEvaluator.

Property Animation与View Animation的区别

  • View Animation只能对View添加动画
  • View Animation只能改变如scale、rotation等值,不能改变background color等属性
  • View Animation改变的只是View画的位置,并不是真正的View,比如一个button从左到右移动,触发onClick方法的位置还是初试的位置。
  • View Animation实现起来比Property Animation简单

Animator

Animator提供了创建动画的基本结构,通常我们不直接使用它,而是使用它的子类。

ValueAnimator

使用ofInt(), ofFloat(), 或者 ofObject()方法来获得ValueAnimator实例

ValueAnimator animation = ValueAnimator.ofFloat(0f, 1f);
animation.setDuration(1000);
animation.start();

当然也可以

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值