Android动画实现小结

来源:互联网 发布:mac word 剪切板 编辑:程序博客网 时间:2024/05/16 03:10
   1.在Android平台提供了两种动画:
       1)一是Tween动画:即通过对场景里的对象不断进行图像变换(平移, 缩放, 旋转)来产生动画效果;
       2)第二中是Frame动画(帧动画):即顺序播放事先做好的图像。
  
 2.Tween动画:
   1)Tween动画通过View的内容完成一系列的图形变换(包括平移,缩放,旋转,改变透明度)来实现动画效果。它主要包括了以下四种动画效果:
   ×Alpha:渐变透明度动画效果。
   ×Scale:渐变尺寸伸缩动画效果。
   ×Translate:画面转换位置移动动画效果。
   ×Rotate:画面旋转旋转动画效果。  
  
   2)Tween动画师通过预先定义一组指令,这些指令指定了图形变换的类型,触发时间,持续时间。当程序沿着时间线执行这些指令就可以实现动画效果。
  
   3)首先我们要定义Animation动画对象,然后设置该动画的一些属性,最后通过startAnimation方法来开始动画。
  
 3.动画的属性设置 :
  1) AlphaAnimation(float formAlpha, float toAlpha);
   其功能:构建一个渐变透明度动画。
   参数:formAlpha为动画起始时透明度;
         toAlpha为动画结束时透明度(0.0表示完全透明, 1.0表示完全不透明)。
        
  2)  ScaleAnimation(float formx, float tox,float formy,  float toy, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue);          
   功能:构建一个渐变尺寸伸缩动画.
   参数:×formX,toX分别是起始和结束时X坐标上的伸缩尺寸;
         ×formY,toY分别是起始和结束时Y坐标上的伸缩尺寸;  
       ×pivotXType, pivotYType分别为x,y的伸缩模式; 
       ×pivotXValue, pivotYValue分别为伸缩动画相对于x,y的坐标开始位置。
  
  3)TranslateAnimation(float formXDelta, float toXDelta, float fromYDelta, float toYDelta)
   功能:构建一个画面转换 位置移动动画。
   参数: ×formXDelta,formYDelta 起始坐标;
       ×toXDelta, toYDelta 结束坐标。
    
   4)RotateAnimation(float formDegress, float toDegress,int xType, float xValue,int yType,float yValue)
      功能:构建一个旋转画面的动画。
      参数:× fromDegress 开始的角度, toDegress 结束的角度;
   × xType yType为x,y的伸缩模式;      
   × xValue,yValue为伸缩动画相对于x,y的坐标开始位置。
  
   5)setDuration(long durationMillis)
    功能:设置动画显示时间。
    参数:durationMilis为动画显示时间的长短,以毫秒为单位。
   
   6)startAnimation(Animation animation)
   功能:开始播放动画。
   参数:animation为要播放的动画。