本篇主要记录Activity之间的跳转动画,和同个Activity下Fragment之间切换的动画,增加应用的体验度。附带动画代码(这里只写了xml文件,Java的相似可以自行查找code)。
先看下效果
旋转.gif
缩放.gif
翻转.gif
直接上代码
旋转效果
rotate_in
android:duration="500"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="0"
android:toDegrees="180"/>
rotate_out
android:duration="500"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="-180"
android:toDegrees="0"/>
缩放效果
zoom_in
android:interpolator="@android:anim/decelerate_interpolator" >
android:duration="1000"
android:fromXScale="0.1"
android:fromYScale="0.1"
android:pivotX="50%"
android:pivotY="50%"
android:toXScale="1.0"
android:toYScale="1.0" />
android:duration="1000"
android:fromAlpha="0"
android:toAlpha="1.0" />
zoom_out
android:interpolator="@android:anim/decelerate_interpolator"
android:zAdjustment="top" >
android:duration="1000"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:pivotX="50%p"
android:pivotY="50%p"
android:toXScale="0.1"
android:toYScale="0.1" />
android:duration="1000"
android:fromAlpha="1.0"
android:toAlpha="0" />
翻转效果
rotate3_in
android:duration="600"
android:propertyName="rotationY"
android:valueFrom="-180"
android:valueTo="0"/>
android:duration="0"
android:propertyName="alpha"
android:startOffset="250"
android:valueFrom="0.0"
android:valueTo="1.0"/>
rotate3_out
android:duration="600"
android:propertyName="rotationY"
android:valueFrom="0"
android:valueTo="180"/>
android:duration="0"
android:propertyName="alpha"
android:startOffset="250"
android:valueFrom="1.0"
android:valueTo="0.0"/>
详解一下
配置文件中
android:alpha 渐变透明度动画效果
android:scale 渐变缩放动画效果
android:translate 画面转换位置移动动画效果
android:rotate 画面转移旋转动画效果
alpha
属性
类型
说明
fromAlpha
浮点型值
动画起始时透明度
toAlpha
浮点型值
动画结束时透明度
duration
长整型值
动画持续时间
注:浮点型0.0表示完全透明,1.0表示完全不透明
scale
属性
类型
说明
interpolator
指定一个动画的插入器
fromXScale
浮点型值
动画起始时X坐标上的伸缩尺寸
toXScale
浮点型值
动画结束时X坐标上的伸缩尺寸
fromYScale
浮点型值
动画起始时Y坐标上的伸缩尺寸
toYScale
浮点型值
动画结束时Y坐标上的伸缩尺寸
pivotX
百分比
动画相对于物件的X坐标的开始位置
pivotY
百分比
动画相对于物件的Y坐标的开始位置
注:
1)浮点型0.0表示收缩到没有,1.0表示正常无伸缩,值小于1.0表示收缩 ,值大于1.0表示放大
2)百分比从0%-100%中取值 50%为物件的X或Y方向坐标上的中点位置
translate
属性
类型
说明
fromXDelta
整型值
动画起始时X坐标上的位置
toXDelta
整型值
动画结束时X坐标上的位置
fromYDelta
整型值
动画起始时Y坐标上的位置
toYDelta
整型值
动画结束时Y坐标上的位置
duration
长整型值
动画持续时间
注:没有指定fromXType、toXType、fromYType、toYType 时候,默认是以自己为相对参照物
rorate
属性
类型
说明
interpolator
指定一个动画的插入器
fromDegrees
浮点型值
动画起始时物件的角度
toDegrees
浮点型值
动画结束时物件旋转的角度
pivotX
浮点型值
动画相对于物件的X坐标的开始位置
pivotY
浮点型值
动画相对于物件的Y坐标的开始位置
duration
长整型值
动画持续时间
注:
1)当结束角度为负数表示逆时针旋转,当结束角度为正数表示顺时针旋转
2)百分比从0%-100%中取值 50%为物件的X或Y方向坐标上的中点位置