1. 利用AnimationDrawable实现Frame(帧)动画
主要应用给ImageView做背景,然后在java代码中调用start()方法播放该帧动画。
实现步骤 :
1)res/drawable/*.xml
<animation-list xmlns:android=""
android:oneshot="boolean">
<item android:drawable="@drawable/XX" android:duration="毫秒" />
......
</animation-list>
2)将步骤1中设置的xml文件设置为ImageView的背景
<ImageView
android:id="@+id/iv"
android:background="@drawable/XXX"/>
3)播放动画
AnimationDrawable animD = (AnimationDrawable)imageView.getBackground();
animD.start(); animD.stop();
建议:如果希望动画随着Activity的出现就开始播放,建议在onResume()中调用start()方法播放,在onPause()中调用stop()方法停止播放。
2. LayoutAnimation:为ListView、GridView这样的可以容纳多个item的控件中item使用的动画。
实现步骤:
1) res/anim/*.xml
定义一个item出现效果的动画xml
2) 定义一个根元素是layoutAnimation的xml文件
在该xml文件中描述控件的item出现的动画xml来源,出现顺序(三个属性值:normal,reverse,random),延迟(以秒为单位)等效果。
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
android:animation="@anim/步骤1的xml文件名"
android:delay="0.2"
android:animationOrder="normal"
>
</layoutAnimation>
3) 控件加载LayoutAnimation动画:
i。xml中,为控件设置属性 android:layoutAnimation="@anim/步骤2的xml文件名"
ii。java中
LayoutAnimationController controller = AnimationUtils.loadLayoutAnimation(context , R.anim.X);
控件.startLayoutAnimation();
3. Activity切换时加载动画 :
overridePendingTransition();
注意,该方法调用必须在startActivity() 或者 finish() 之后。
主要应用给ImageView做背景,然后在java代码中调用start()方法播放该帧动画。
实现步骤 :
1)res/drawable/*.xml
<animation-list xmlns:android=""
android:oneshot="boolean">
<item android:drawable="@drawable/XX" android:duration="毫秒" />
......
</animation-list>
2)将步骤1中设置的xml文件设置为ImageView的背景
<ImageView
android:id="@+id/iv"
android:background="@drawable/XXX"/>
3)播放动画
AnimationDrawable animD = (AnimationDrawable)imageView.getBackground();
animD.start(); animD.stop();
建议:如果希望动画随着Activity的出现就开始播放,建议在onResume()中调用start()方法播放,在onPause()中调用stop()方法停止播放。
2. LayoutAnimation:为ListView、GridView这样的可以容纳多个item的控件中item使用的动画。
实现步骤:
1) res/anim/*.xml
定义一个item出现效果的动画xml
2) 定义一个根元素是layoutAnimation的xml文件
在该xml文件中描述控件的item出现的动画xml来源,出现顺序(三个属性值:normal,reverse,random),延迟(以秒为单位)等效果。
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
android:animation="@anim/步骤1的xml文件名"
android:delay="0.2"
android:animationOrder="normal"
>
</layoutAnimation>
3) 控件加载LayoutAnimation动画:
i。xml中,为控件设置属性 android:layoutAnimation="@anim/步骤2的xml文件名"
ii。java中
LayoutAnimationController controller = AnimationUtils.loadLayoutAnimation(context , R.anim.X);
控件.startLayoutAnimation();
3. Activity切换时加载动画 :
overridePendingTransition();
注意,该方法调用必须在startActivity() 或者 finish() 之后。