android ValueAnimator ObjectAnimator

android  PropertyAnimator 在API  11 过后才引入的     它完全可以替代     TweenAnimation

PropertyAnimator    分成两个类   ValueAnimator       ObjectAnimator

ValueAnimator    

 看名字 就知道是   数值动画       就是然一个值    从多少  到多少,  只是将类似动画的效果用到了数值上面;

具体的作用本来是想写一篇  理解笔记的但是看到大牛写的一篇文章太详细了,我就不在写了,这里推荐出来

点击查看 : Animation——ValueAnimator基本使用 

ObjectAnimator

ObjectAnimator其实是继承至ValueAnimator

public final class ObjectAnimator extends ValueAnimator 
三种方法  创建ObjectAnimator

 1、 java 代码ObjectAnimator.ofXXX()的方式创建

//ivJack.getTranslationX();
//ivJack.setTranslationX();
// 就是凡是可以用set  get方法得到的属性都可以进行 属性动画
//如果不确定 属性值的名字    就用set  get 先尝试一下
ObjectAnimator  tranX  = ObjectAnimator.ofFloat(ivJack,"translationX",100,300,200,500);
//就是 x坐标  先移动到100 再移动到300  再从300移动到200  再从200移动到500
tranX.setDuration(3000);   //动画执行一次的时长  重复一次就再加一倍
tranX.setRepeatCount(1);//重复的次数
tranX.setRepeatMode(ObjectAnimator.RESTART);//重复的方式
tranX.setStartDelay(1000);//开始延时
tranX.start();

2、第二种方式   先创建 PropertyValuesHolder

PropertyValuesHolder  p1 = PropertyValuesHolder.ofFloat("scaleX",2f,0.5f,1);
PropertyValuesHolder  p2 = PropertyValuesHolder.ofFloat("scaleY",2f,0.5f,1);
ObjectAnimator ob = ObjectAnimator.ofPropertyValuesHolder(ivJack, p1, p2);
ob.start();

3、第三种方式  通过创建xml  文件



//加载xml 文件中加载的动画
ObjectAnimator ro = (ObjectAnimator) AnimatorInflater.loadAnimator(this, R.animator.rotate_animator);
//补间动画用的是AnimationUtils      属性动画用的是AnimatorInflater
ro.setTarget(ivJack); // 设置动画对象
ro.start();

还要有一个 AnimatorSet类

 AnimatorSet set = new AnimatorSet();
 set.playSequentially(animator1,animator2,animator3);//有序播放
// set.playTogether(animator1,animator2,animator3);//一起播放
// set.play(animater1).with(Animater2).after(animator3).before(animator4);// 自定义顺序播放
 set.start();
当然也可以通过xml代码生成


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值