• Property-属性动画


    今天第一次接触到属性动画。参考着

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38067475

    的博客,自己学习下。

    它的区别跟View Animation的区别现在还不是很清除,先跳过这个阶段,直接在代码中体验二者的不同吧。

    一、ObjectAnimator

    它的使用最简单,感觉跟View Animation相似,只是它的使用要比前者简单的多,一句代码就搞定了,看如下代码跟效果

    ObjectAnimator.ofFloat(view, "rotationY", 0.0f, 360.0f).
        setDuration(2000)
        .start();

    解释

    ofFloat的参数的意义

    view:需要添加动画的控件

    "rotationY"-这个是动画效果(绕y轴旋转)(如果不是系统提供的动画样式,那么它不会报错,而是没有效果。但是,它的监听事件会执行。看下面介绍)

    其他样式

    "alpha"-透明度

    0.0f(360.f)-是开始跟结束角度

    监听事件

    objectAnimator.addUpdateListener(new AnimatorUpdateListener() {
    
                @Override
                public void onAnimationUpdate(ValueAnimator arg0) {
                    // TODO Auto-generated method stub
                    Log.e("123", "arg0==="+arg0.getAnimatedValue());
                }
            });

    看打印结果

      1 06-03 17:18:03.990: E/123(19763): arg0===1.0
      2 06-03 17:18:04.004: E/123(19763): arg0===1.0
      3 06-03 17:18:04.023: E/123(19763): arg0===0.9997773
      4 06-03 17:18:04.042: E/123(19763): arg0===0.9991095
      5 06-03 17:18:04.061: E/123(19763): arg0===0.99799716
      6 06-03 17:18:04.081: E/123(19763): arg0===0.9964413

    它其实就是实时监控透明度的变化(即使你的动画类型不存在,这个过程执行,只是界面上没有什么变化)

    如果你想利用ObjectAnimator执行多条语句,你可以使用PropertyValuesHolder

    如下方法

    public void startAnimatorHode(View view){
        
    PropertyValuesHolder pv1 = PropertyValuesHolder.ofFloat("alpha", 1.0f,0.0f);
    PropertyValuesHolder pv2 = PropertyValuesHolder.ofFloat("scaleX", 1.0f,0.0f);
    PropertyValuesHolder pv3 = PropertyValuesHolder.ofFloat("scaleY", 1.0f,0.0f);
    objectAnimator = ObjectAnimator.ofPropertyValuesHolder(view, pv1,pv2,pv3);
    objectAnimator.setDuration(2000);
    objectAnimator.start();
    }

    它会同时执行多条语句

    2

  • 相关阅读:
    NOIP2016-2020 复盘
    「笔记」线段树合并/分裂
    「笔记」线性基
    20210628模拟赛解题报告
    「笔记」左偏树
    题解 CF718C Sasha and Array
    一些杂碎的知识点
    20210614 模拟赛
    洛谷 P4249 [WC2007]剪刀石头布
    CF132E Bits of merry old England
  • 原文地址:https://www.cnblogs.com/zhangshuli-1989/p/zhangshuli_property_1563211.html
Copyright © 2020-2023  润新知