在res下新建一个文件夹,命名为anim,创建xml文件,例如创建了一个a1.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
//在这里写动画
</set>
alpha:渐变透明度效果
rotate:旋转动画效果
scale:伸缩动画效果
translate:平移动画效果
下面使用xml创建动画-部分动画,详情见源码:
alpha:渐变透明度效果-从有到无
a1.xml
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<alpha
android:duration="3000"
android:fromAlpha="1.0"
android:toAlpha="0.0" />
</set>
rotate:旋转动画效果-
顺时针
rotate.xml
<rotate
android:duration="3000"
android:fromDegrees="0"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="+350" />
scale:伸缩动画效果-向右下角缩放
scale.xml
<scale
android:duration="700"
android:fillAfter="false"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:pivotX="100%"
android:pivotY="100%"
android:toXScale="0"
android:toYScale="0" />
translate:平移动画效果-从上到下
translate.xml
<translate
android:duration="2000"
android:fromXDelta="0"
android:fromYDelta="0"
android:toXDelta="0"
android:toYDelta="300" />
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<rotate
android:duration="3000"
android:fromDegrees="0"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="+350" />
<translate
android:duration="2000"
android:fromXDelta="0"
android:fromYDelta="0"
android:toXDelta="0"
android:toYDelta="300" />
</set>
写一个工具类加载这个动画
AnimaXmlUtils.java
/**
* 使用XMl设计的动画
*
*/
public class AnimaXmlUtils {
private static Animation anim;
/**
* 渐变透明动画,透明度:1.0~0.0
*
* @return
*/
public static Animation alphaFrom1To0(Context context) {
anim = AnimationUtils.loadAnimation(context, R.anim.a1);
return anim;
}
/**
* 渐变透明动画,透明度:1.0~0.0
*
* @return
*/
public static Animation alphaFrom0To1(Context context) {
anim = AnimationUtils.loadAnimation(context, R.anim.a2);
return anim;
}
/**
* 旋转动画,顺时针360
*
* @return
*/
public static Animation rotateTiclockwise(Context context) {
anim = AnimationUtils.loadAnimation(context, R.anim.rotate);
return anim;
}
/**
* 旋转动画,逆时针360
*
* @return
*/
public static Animation rotateAnticlockwise(Context context) {
anim = AnimationUtils.loadAnimation(context, R.anim.rotate1);
return anim;
}
/**
* 伸缩动画,从有到无
*
* @return
*/
public static Animation scaleFrom1to0(Context context) {
anim = AnimationUtils.loadAnimation(context, R.anim.scale);
return anim;
}
/**
* 伸缩动画,从有到无
*
* @return
*/
public static Animation scaleFrom0to1(Context context) {
anim = AnimationUtils.loadAnimation(context, R.anim.scale1);
return anim;
}
/**
* 平移动画,从上到下
*
* @return
*/
public static Animation translateTopToBottom(Context context) {
anim = AnimationUtils.loadAnimation(context, R.anim.translate);
return anim;
}
/**
* 平移动画,从下到上
*
* @return
*/
public static Animation translateBottomToTop(Context context) {
anim = AnimationUtils.loadAnimation(context, R.anim.translate1);
return anim;
}
/**
* 四个动画集合
*
* @return
*/
public static Animation animationRoaAndTranSet(Context context) {
anim = AnimationUtils.loadAnimation(context, R.anim.aniset);
return anim;
}
}
效果图:
源码下载:http://download.youkuaiyun.com/detail/forwardyzk/8314155