首页 > 代码库 > android 动画

android 动画

Tween动画:

   动态代码使用方法:

 

技术分享
AlphaAnimation:                  //创建一个AnimationSet对象,参数为Boolean型,           //true表示使用Animation的interpolator,false则是使用自己的           AnimationSet animationSet = new AnimationSet(true);           //创建一个AlphaAnimation对象,参数从完全的透明度,到完全的不透明           AlphaAnimation alphaAnimation = new AlphaAnimation(1, 0);           //设置动画执行的时间           alphaAnimation.setDuration(500);           //将alphaAnimation对象添加到AnimationSet当中           animationSet.addAnimation(alphaAnimation);           //使用ImageView的startAnimation方法执行动画           image.startAnimation(animationSet);RotateAnimation:            AnimationSet animationSet = new AnimationSet(true);           //参数1:从哪个旋转角度开始           //参数2:转到什么角度           //后4个参数用于设置围绕着旋转的圆的圆心在哪里           //参数3:确定x轴坐标的类型,有ABSOLUT绝对坐标、RELATIVE_TO_SELF相对于自身坐标、RELATIVE_TO_PARENT相对于父控件的坐标           //参数4:x轴的值,0.5f表明是以自身这个控件的一半长度为x轴           //参数5:确定y轴坐标的类型           //参数6:y轴的值,0.5f表明是以自身这个控件的一半长度为x轴           RotateAnimation rotateAnimation = new RotateAnimation(0, 360,                  Animation.RELATIVE_TO_SELF,0.5f,                  Animation.RELATIVE_TO_SELF,0.5f);           rotateAnimation.setDuration(1000);           animationSet.addAnimation(rotateAnimation);           image.startAnimation(animationSet);           //参数1:x轴的初始值           //参数2:x轴收缩后的值           //参数3:y轴的初始值           //参数4:y轴收缩后的值           //参数5:确定x轴坐标的类型           //参数6:x轴的值,0.5f表明是以自身这个控件的一半长度为x轴           //参数7:确定y轴坐标的类型           //参数8:y轴的值,0.5f表明是以自身这个控件的一半长度为x轴           ScaleAnimation scaleAnimation = new ScaleAnimation(                  0, 0.1f,0,0.1f,                  Animation.RELATIVE_TO_SELF,0.5f,                  Animation.RELATIVE_TO_SELF,0.5f);           scaleAnimation.setDuration(1000);           animationSet.addAnimation(scaleAnimation);           image.startAnimation(animationSet);TranslateAnimation A         nimationSet animationSet = new AnimationSet(true);           //参数1~2:x轴的开始位置           //参数3~4:y轴的开始位置           //参数5~6:x轴的结束位置           //参数7~8:x轴的结束位置           TranslateAnimation translateAnimation =              new TranslateAnimation(                  Animation.RELATIVE_TO_SELF,0f,                  Animation.RELATIVE_TO_SELF,0.5f,                  Animation.RELATIVE_TO_SELF,0f,                  Animation.RELATIVE_TO_SELF,0.5f);           translateAnimation.setDuration(1000);           animationSet.addAnimation(translateAnimation);           image.startAnimation(animationSet);Tween Animations的通用方法  1、setDuration(long durationMills)   设置动画持续时间(单位:毫秒)        、setFillAfter(Boolean fillAfter)   如果fillAfter的值为true,则动画执行后,控件将停留在执行结束的状态        、setFillBefore(Boolean fillBefore)   如果fillBefore的值为true,则动画执行后,控件将回到动画执行之前的状态        4、setStartOffSet(long startOffSet)   设置动画执行之前的等待时间     5、setRepeatCount(int repeatCount)   设置动画重复执行的次数    XML里面使用的步骤:   <?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"/></set>Animation animation = AnimationUtils.loadAnimation(                  Animation1Activity.this, R.anim.alpha);           // 启动动画           image.startAnimation(animation);
View Code

 

  Frame动画

技术分享
 <?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/icon_one"         android:duration="150">     </item>       <item         android:drawable="@drawable/icon_two"         android:duration="150">     </item>        <item         android:drawable="@drawable/icon_three"         android:duration="150">     </item></animation-list> animationIV.setImageResource(R.drawable.framebyframe);    animationDrawable = (AnimationDrawable) animationIV      .getDrawable();    animationDrawable.start();
View Code

 

 

 

android 动画