自定义View之动画篇(九)-ObjectAnimator基本使用

本文详细介绍了ObjectAnimator在Android中的应用,包括如何直接与控件属性关联、如何自定义ObjectAnimator以及XML实现属性动画的方法。重点讲解了ObjectAnimator的工作原理,如通过反射调用set方法改变控件属性,并强调了初始值的设定以及XML动画资源的使用。
摘要由CSDN通过智能技术生成

ObjectAnimator

ValueAnimator缺点:只能对数值进行动画运算。比如需要对控件进行操作需要,监听数值变化,在监听中对控件进行操作,比较麻烦。
为了直接与控件相关联,ObjectAnimator应运而生。
ObjectAnimator也重写了ofInt()、ofFloat()等

以ofFloat(View target,String propertyName,float…value)为例;
target:表示目标控件
propertyName:表示用改变控件的那个属性值比如:alpha(透明度)、rotation(旋转)。
value:表示属性的开始到结束区间
注意:这些属性值并不是根据控件xml属性来改变的(比如Textview没有alpha等属性,View也没有),而是通过其对应的set…()来改变控件中对应的值

ObjectAnimator与ValueAniamtor过程:

  1. 首先插值器参数动画时间进度(动画时间进度0-1)计算出动画数值进度百分比
  2. Evaluator计算出当前确定的值

前两步和ValueAniamtor一样

  1. 通过将属性值拼接成set…()函数,在通过反射找到该控件的的se…()函数,改变其值;

ObjectAnimator根据属性值拼接对应的set函数名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值