Animation xml中或者代码实现
RotateAnimation animation=new RotateAnimation(0,360,Animation.RELATIVE_TO_PARENT,1f,Animation.RELATIVE_TO_PARENT,0f);
public void onClick(View view){
??? ??? //创建一个AnimationSet对象
??? ??? AnimationSet animationSet=new AnimationSet(true);
??? ??? //创建一个AlphaAnimiation对象
??? ??? AlphaAnimation alphaAnimation=new AlphaAnimation(1, 0);
??? ??? //执行时间
??? ??? alphaAnimation.setDuration(1000);
??? ??? animationSet.addAnimation(alphaAnimation);
??? ????? //然后对图片对象imageView调用startAnimation(animationSet);???
?
?????? setFillAfter(true)表示动画执行完停留所在的状态
?????? setStartOffSet 等待多久
?????? setRepeatCount重复执行次数
?
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
??? android:interpolator="@android:anim/accelerate_interpolator">
??? <alpha android:fromAlpha="1.0"
??? ?? ?android:toAlpha="0.0"
??? ??? android:startOffset="500"
??? ??? android:duration="500"
??? ></alpha>
</set>
Animation animation=AnimationUtils.loadAnimation(MobActivity.this,R.anim.alpha);
? imageView.startAnimation(animation);
?
Interpolator定义了动画变化的速率
AccelerateDecelerateInterpolator:在开始和结束比较慢
CvcleInterpolator:动画循环播放特定的次数,速率改变沿着正玹曲线
LinearInterpolator:均匀变化
<?xml version="1.0" encoding="UTF-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
??? android:oneshot="false">
??? <item android:drawable="@drawable/nv1" android:duration="500"/>
??? <item android:drawable="@drawable/nv2" android:duration="500"/>
??? <item android:drawable="@drawable/nv3" android:duration="500"/>
??? <item android:drawable="@drawable/nv4" android:duration="500"/>
</animation-list>
?
imageView.setBackgroundResource(R.drawable.anim_nv);
AnimationDrawable animationDrawable=(AnimationDrawable)imageView.getBackground();
animationDrawable.start();
为一个layout里面的控件,或者是ViewGroup里面的控件设置动画效果。效果相同,且可以设置为在不同的时间显示。在代码或xml配置
res/anim/list_anim_layout.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--为一个layout里面的控件,或者是ViewGroup里面的控件设置动画效果。
效果相同,且可以设置为在不同的时间显示。可以在代码或xml配置
delay单位秒,一个动画效果结束后另一个产生的时间 。最后指定动画效果的配置文件-->
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
? android:delay="0.5"
? android:animationOrder="normal"
? android:animation="@anim/alpha"/>
在Activity listView中加入
<ListView...
??????? android:layoutAnimation="@anim/list_anim_layout"
???????? >
?
Animation animation=(Animation)AnimationUtils.loadAnimation(this, R.anim.alpha);
?????? LayoutAnimationController lac=new LayoutAnimationController(animation);
?????? lac.setOrder(LayoutAnimationController.ORDER_NORMAL);
??? listView.setLayoutAnimation(lac);
AnimationListener
a)? onAnimationEnd(Animation animation)
b)? onAnimationRepeat(Animation animation)
c)? onAnimationStart(Animation animation)
l? AnimationListener的使用方法