美文网首页
视图动画

视图动画

作者: 王家二公主 | 来源:发表于2020-03-19 22:42 被阅读0次

视图动画的种类:

alpha:渐变透明动画效果

scale 渐变尺寸伸缩

translate:画面变换位置移动

rorate:画面转移旋转动画

set:定义动画集

加载使用动画:Animation animation = AnimationUtils.loadAnimation(MyActivity.this,R.anim.XX)

scale标签

用于缩放动画,可以实现动态调整空间尺寸的效果

android:fromXScale:动画的起始,空间在X轴方向上相对自身的缩放比列  1.0代表自身无变化  0.5代表缩小一倍

android:toXScale:动画的结束,空间在X轴方向上相对自身的缩放比列

android:fromYScale:动画的起始,空间在Y轴方向上相对自身的缩放比列  1.0代表自身无变化  0.5代表缩小一倍

android:toYScale:动画的结束,空间在Y轴方向上相对自身的缩放比列

android:pivotX:缩放起始点X轴坐标,可以是数值,百分数,百分数p三种样式,如50,50%,50%p  数值代表当前视图的左上角,即原始点出加上50px,如果是50%,则表示在当前控件的左上角加上自己宽度的50%,如果是50%p,则表示在当前控件的左上角加上父控件宽度的50%

android:pivotY:缩放起始点Y轴坐标

<scale xmlns:android="http://schemas.android.com/apk/res/android"

android:fromXScale="1.0"

android:fromYScale="2"

android:toXScale="0.4"

android:toYScale="0.6"

android:duration = "700">

</scale>

Animation

android:duration 动画完成时间

android:fillAfter: true控件动画结束时,保存动画结束状态

android:fillBefore: true控件动画结束时,还原动画初始状态

android:fillEnable ,与android:fillBefore效果相同,都是在控件动画结束时,将还原到初始状态

android:repeatCount  指定动画的重复次数,当为 infinite,表示无限循环

android:repeatMode 用于设定重复类型,有reverse和restart两个值,reverse表示倒序回放,restart表示重放,并且必须与repeatCout配合使用

android:interpolator 用于设定插值器,指定动画效果,比如弹跳效果等

Alpha标签

渐变透明动画效果

android:fromAlpha 动画开始的透明度,值范围0.0到1.0  0.0是全透明 1.0是完全不透明

android:toAlpha 动画开始的透明度,值范围0.0到1.0  0.0是全透明 1.0是完全不透明

rotate标签

画面转移旋转动画效果

android:fromDegrees  动画开始旋转的角度位置,正值代表顺时针,负值代表逆时针

android:toDegrees  动画结束旋转的角度位置,正值代表顺时针,负值代表逆时针

android:pivotX旋转中心点X轴坐标,默认是坐标原点,可以是数值,百分数,百分数p三种样式,如50,50%,50%p  数值代表当前视图的左上角,即原始点出加上50px,如果是50%,则表示在当前控件的左上角加上自己宽度的50%,如果是50%p,则表示在当前控件的左上角加上父控件宽度的50%

android:pivotY:旋转中心点Y轴坐标

translate标签

画面变换位置

android:fromXDelta  起点X轴坐标,可以是数值,百分数,百分数p三种样式,如50,50%,50%p  数值代表当前视图的左上角,即原始点出加上50px,如果是50%,则表示在当前控件的左上角加上自己宽度的50%,如果是50%p,则表示在当前控件的左上角加上父控件宽度的50%

android:fromYDelta:起点Y轴坐标

android:toXDelta 终点X轴坐标

android:toYDelta终点Y轴坐标

set标签

容器类标签,定义动画集

<set xmlns:android="http://schemas.android.com/apk/res/android"

android:duration="5000"

android:fillAfter="true">

<alpha

android:fromAlpha="0.0"

android:toAlpha="1.0"/>

<scale

android:fromYScale="0.0"

android:fromXScale="0.0"

android:toYScale="1.4"

android:toXScale="1.4"

android:pivotY="50%"

android:pivotX="50%"/>

<rotate

android:fromDegrees="0"

android:toDegrees="720"

android:pivotX="50%"

android:pivotY="50%"/>

</set>

视图代码的动画实现

1、ScaleAnimation

构造方法

public ScaleAnimation(Context context, AttributeSet attrs) 

public ScaleAnimation(float fromX, float toX, float fromY, float toY)

public ScaleAnimation(float fromX, float toX, float fromY, float toY, float pivotX, float pivotY)

public ScaleAnimation(float fromX, float toX, float fromY, float toY, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)

最后一个构造函数pivotXType参数取值有三个Animation.ABSOLUTE,具体数值,如50;Animation.RELATIVE_TO_PARENT ,相对于父容器,取值如50%p,Animation.RELATIVE_TO_SELF相对于自身,取值为50%

2、AlphaAnimation

3、RotateAnimation

4、TranslateAnimation

5、AnimationSet 

public AnimationSet(Context context, AttributeSet attrs)

public AnimationSet(boolean shareInterpolator) 

shareInterpolator为true,用于在AnimationSet中定义一个插值器(interpolater),下面所以的动画都用这个插值器;为false时,下面的动画定义各自的插值器

增加动画的方法:

public void addAnimation(Animation a)

6、Animation

取消动画

public void cancel()

将动画重置到动画开始前状态

public void reset()

动画监听

public void setAnimationListener(Animation.AnimationListener listener)

void onAnimationStart(Animation var1);动画开始时

void onAnimationEnd(Animation var1); 动画结束时

void onAnimationRepeat(Animation var1);动画重复时


相关文章

  • android基础-视图动画(Animation)

    知识点 视图动画的类型 视图动画的特点 视图动画的实现方式 一、视图动画的类型 视图动画主要分四类:透明度,旋转,...

  • Android视图动画集合AndoridViewAnimatio

    Android视图动画集合AndoridViewAnimations Android视图动画是针对视图对象的动画效...

  • Android 动画 | 艺术探索笔记

    Android 动画分为两大类 视图动画 属性动画 视图动画(View animation) 视图动画分为 补间动...

  • 属性动画与视图动画

    1.视图动画与属性动画: 视图动画:AlphaAnimation,RotateAnimation,Translat...

  • Android动画之视图动画

    分类 Android动画主要包括视图动画和属性动画。视图动画包括Tween动画和Frame动画。Tween动画又包...

  • Android 动画

    View Animation(视图动画) 概述: 视图动画,也叫 Tween (补间)动画可以在一个视图容器内执行...

  • Android 动画

    View Animation(视图动画) 概述: 视图动画,也叫 Tween (补间)动画可以在一个视图容器内执行...

  • iOS 视图动画

    父视图的动画,保持子视图的frame不变;子视图的动画,保持父视图的frame不变。

  • Android动画

    Android动画分类: 视图动画:补间动画、逐帧动画 属性动画 视图动画 补间动画 可以在xml中定义动画,然后...

  • Android 动画

    android动画分为三种 帧动画,视图动画(补间动画),属性动画逐帧动画 视图动画 属性动画 Window和A...

网友评论

      本文标题:视图动画

      本文链接:https://www.haomeiwen.com/subject/jtngshtx.html