android动画xml

[TOC]

Tween Animation通用属性及功能

通用属性 功能
Duration[long] 属性为动画的持续时间,以毫秒为单位
fillAfter[boolean] 是指动画结束时画面停留在此动画的第一帧
fillbefore[boolean] 是指动画结束是画面停留在此动画的最后一帧
上面两个属性解释 是因为有动画链的原因,假定你有一个移动的动画紧跟一个淡出的动画,如果你不把移动的动画的setFillAfter置为true,那么移动动画结束后,View会回到原来的位置淡出,如果setFillAfter置为true, 就会在移动动画结束的位置淡出
interpolator 指定一个动画的插入器,一些常见的插入器为decelerate_interpolator减速--动画插入器,其他的属于特定的动画效果,如accelerate_decelerate_interpolator为加速--减速动画插入器,accelerate_interpolator为加速--动画插入器, 就是动画显示的速度的改变的速度设置
repeatCount 重复次数
reaptMode 定义重复的行为
1.重新开始动画
2.plays backward
startOffset[long] 动画之间的时间间隔,从上一次动画停了多少时间开始执行下一个动画
zAdjustment[int] 定义动画的Z Order的改变.
0 : 保持Z Order不变
1:保持在最上层
-1:保持在最下层

Xml结点及其功能

XML结点 功能说明
<alpha android:fromAlpha="0.0" android:toAlpha="1.0"/> 渐变透明度动画效果
fromAlpha属性,动画起始时透明度为0.0表示完全透明
toAlpha属性,动画结束是透明度 1.0 表示不透明,介于 0.0~1.0 两者之间的值float数据类型的数字

渐变尺寸伸缩动画及其效果

scale 渐变尺寸伸缩动画效果
<scale
android:fromXScale="0.5"
android:toXScale="2.0"
android:fromYScale="0.5"
android:toYScale="2.0"
android:pivotX="0%"
android:pivotY="50%"
android:startOffset="0"
android:duration="4000"
android:fillBefore="true"/>
fromXScale/fromYScale[float]为软件起始时,X、Y坐标上的伸缩尺寸,0.0表示没有,1.0表示正常无伸缩

toXScale[float]为动画结束时,X、Y坐标上的伸缩尺寸,0.0 表示没有,1.0 表示正常无伸缩

pivotX/pivotY[float] 为动画相对于X、Y坐标的开始位置,属性值说明:从0%~100%中取值,50%为对象的X或Y方向坐标上的重点位置

位于变化的动画效果

translate 位移变化动画效果
<translate
android:fromXDelta="30"
android:toXDelta="100"
android:fromYDelta="30"
android:toYDelta="100"/>
fromYDelta toYDelta为动画结束和起始时Y坐标上的位置
fromXDelta toXDelta为动画结束和起始时X坐标上的位置

旋转动画效果

rotate 效果说明
<rotate
android:fromDegrees="0"
android:toDegrees="+350"/>
fromDegrees 为动画起始时对象的角度
toDegrees 属性为动画结束时,对象旋转的角度,可以大于360度
当角度为负数--表示逆时针旋转,反之则为顺时针旋转(负数from -- to 正数:顺时针旋转)
(负数from -- to 负数:逆时针旋转)
(正数from -- to 正数:顺时针旋转)
(正数from -- to 负数:逆时针旋转)

从XML中读取动画执行

  1. ImageView imageView = (ImageView) findViewById(R.id.tweenImageView);
  2. /*获得动画*/
  3. Animation anim = AnimationUtils.loadAnimation(this, R.anim.ani);
  4. imageView.startAnimation(anim);




原文地址:https://www.cnblogs.com/sober-reflection/p/5086955.html