• Android开发笔记(二十四)——属性动画


    补间动画和属性动画

    补间动画是一种视觉现象,并没有改变View真正的值和属性
    属性动画真正改变了View的属性值(如XY的坐标,宽度高度等等)

    属性动画重要的类

    • ValueAnimator
    • ObjectAnimator.ofFloat()
      translationX translationY alpha rotation rotationX…

    示例1

    //沿着Y轴移动500,执行时间为2000ms,start()启动
    tvTest.animate().translationYBy(500).setDuration(2000).start();
    

    效果:

    示例2

    这个是通过View自带的方法实现了属性动画的功能:

    //两秒钟之内透明度变成0
    tvTest.animate().alpha(0).setDuration(2000).start();
    

    效果:

    示例3

    ValueAnimator的用法:
    值的变化

            ValueAnimator valueAnimator = ValueAnimator.ofInt(0,100);
            valueAnimator.setDuration(2000);
            //添加一个监听器
            valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
                @Override
                public void onAnimationUpdate(ValueAnimator animation) {
                    //valueAnimator实际的值
                    Log.d("valueAnimator实际的值",animation.getAnimatedValue()+"");
                    //动画的进度0-1
                    Log.d("动画的进度",animation.getAnimatedFraction()+"");
                }
            });
            valueAnimator.start();
    

    效果:

    示例4

    ObjectAnimator.ofFloat()的使用:

    ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(tvTest,"translationY",0,500,200,800);
    objectAnimator.setDuration(2000);
    objectAnimator.start();
    

    效果:

  • 相关阅读:
    js函数的Json写法
    Bootstrap3和Bootstrap4区别
    Unicode编码是什么
    保留字是什么
    范仁义js课程---5、js字面量和变量
    什么是脚本语言
    ECMAScript 版本
    TortoiseGit上传代码到GitHub
    Android Studio快捷键
    Android 适配
  • 原文地址:https://www.cnblogs.com/yangdd/p/13381542.html
Copyright © 2020-2023  润新知