zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

Android 属性动画(三)

2023-09-14 09:04:24 时间

学习之前,请学习第一章节有助于这一章的理解:
https://blog.csdn.net/qq_27494201/article/details/96484758
public void setRotationX:

效果图:
在这里插入图片描述

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"rotationX",30,0);

效果图:
在这里插入图片描述

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"rotationX",0,30);

分析一波:

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"rotationX",0,30);
 第一个参数是:activity_main.xml 中 创建的ImageView控件
 第二个参数是:rotationX ,表示垂直旋转动画
 第三个参数是:如果是【030】就是由上到下,如果时【300】就是由下到上

效果图:
—————————————————————————————————————
public void setRotationY:
在这里插入图片描述

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"rotationY",30,0);

效果图:
在这里插入图片描述

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"rotationY",0,30);

分析一波:

相信其它的我就不用多说了,按照第一个例子,我相信你已经有了灵感
第二个参数就是:rotationY 表示水平方向上的旋转

—————————————————————————————————————
public void setTranslationX :
效果图:
在这里插入图片描述

   ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"translationX",0,50);

反过来只需要改变最后两个参数即可!

—————————————————————————————————————
public void setTranslationY :

整个平面图,由上到下平移

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"translationY",0,50);

反过来就是,整个平面图,由下到上平移

—————————————————————————————————————
public void setScaleX:
效果图:
在这里插入图片描述

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"scaleX",0,50);

反过来,就是左右拉回来

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"scaleX",50,0);

—————————————————————————————————————
public void setScaleY:
效果图:
在这里插入图片描述

ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"scaleY",0,50);

反过来,就是上下拉开

ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"scaleY",50,0);

—————————————————————————————————————
public void setAlpha :
效果图:
在这里插入图片描述

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"alpha",1,0);

反过来就是 淡化 → 清楚

 ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"alpha",0,1);

—————————————————————————————————————
public void setRotation:
在这里插入图片描述
逆时针旋转:

ObjectAnimator animator = ObjectAnimator.ofFloat(imageView,"rotation",30,0);

反过来就是顺时针旋转
好啦,我就讲到这里啦:

总结:
在这里插入图片描述

【1】属性设置动画时,ObjectAnimator.ofFloat() 方法:

【2】另外关于 setInterpolator () 方法设置插值器( Interpolator ) ,插值器负责控制动画变化的速率,使动画效果能够以匀速、加速、减速、抛物线速率等各种速率进行变化,常见的插值器如下: