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中读取动画执行
ImageView imageView = (ImageView) findViewById(R.id.tweenImageView);
/*获得动画*/
Animation anim = AnimationUtils.loadAnimation(this, R.anim.ani);
imageView.startAnimation(anim);