[转]android animation的应用实例

来源:互联网 发布:js统计当前在线人数 编辑:程序博客网 时间:2024/04/29 03:59
此文件名为myanimation.xml 位于 res/anim文件夹下,具体释义已在文件中解释:
 
  1. <?xml version="1.0" encoding="UTF-8"?>   
  2. <set xmlns:android="http://schemas.android.com/apk/res/android">   
  3.    
  4.     <!--    
  5.         Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效   
  6.            
  7.         Alpha:渐变透明度动画效果   
  8.         Scale:渐变尺寸伸缩动画效果   
  9.         Translate:画面转换位置移动动画效果   
  10.         Rotate:画面旋转动画效果   
  11.            
  12.         Tween Animation 通用属性[类型]    功能     
  13.             Duration[long]  属性为动画持续时间   时间以毫秒为单位   
  14.             fillAfter [boolean] 当设置为true ,该动画转化在动画结束后被应用   
  15.             fillBefore[boolean] 当设置为true ,该动画转化在动画开始前被应用   
  16.                
  17.             interpolator    指定一个动画的插入器  有一些常见的插入器   
  18.             accelerate_decelerate_interpolator   
  19.             加速-减速 动画插入器   
  20.             accelerate_interpolator   
  21.             加速-动画插入器   
  22.             decelerate_interpolator   
  23.             减速- 动画插入器   
  24.             其他的属于特定的动画效果   
  25.             repeatCount[int]    动画的重复次数    
  26.             RepeatMode[int] 定义重复的行为 1:重新开始  2:plays backward   
  27.             startOffset[long]   动画之间的时间间隔,从上次动画停多少时间开始执行下个动画   
  28.             zAdjustment[int]    定义动画的Z Order的改变 0:保持Z Order不变   
  29.             1:保持在最上层   
  30.             -1:保持在最下层 
  31.      -->   
  32.     <!--   
  33.         透明控制动画    
  34.      -->   
  35.     <alpha   
  36.         android:fromAlpha="0.1"    
  37.         android:toAlpha="1.0"   
  38.         android:duration="3000"   
  39.     />   
  40.            
  41.     <!-- 尺寸伸缩动画效果 scale   
  42.       
  43.         属性:interpolator 指定一个动画的插入器   
  44.    
  45.         有三种动画插入器:   
  46.          accelerate_decelerate_interpolator  加速-减速 动画插入器   
  47.          accelerate_interpolator        加速-动画插入器   
  48.          decelerate_interpolator        减速- 动画插入器   
  49.    
  50.         其他的属于特定的动画效果   
  51.    
  52.             fromXScale 属性为动画起始时 X坐标上的伸缩尺寸       
  53.             toXScale   属性为动画结束时 X坐标上的伸缩尺寸        
  54.    
  55.             fromYScale 属性为动画起始时Y坐标上的伸缩尺寸       
  56.             toYScale   属性为动画结束时Y坐标上的伸缩尺寸       
  57.    
  58.             说明:   
  59.                  以上四种属性值       
  60.                     0.0表示收缩到没有    
  61.                     1.0表示正常无伸缩        
  62.                     值小于1.0表示收缩     
  63.                     值大于1.0表示放大   
  64.                        
  65.             pivotX     属性为动画相对于物件的X坐标的开始位置   
  66.             pivotY     属性为动画相对于物件的Y坐标的开始位置   
  67.             说明:   
  68.                     以上两个属性值 从0%-100%中取值   
  69.                     50%为物件的X或Y方向坐标上的中点位置   
  70.         长整型值:   
  71.             duration  属性为动画持续时间   
  72.             说明:   时间以毫秒为单位   
  73.    
  74.         布尔型值:   
  75.             fillAfter 属性 当设置为true ,该动画转化在动画结束后被应用   
  76.     -->   
  77.     <scale 
  78.         android:interpolator="@android:anim/accelerate_decelerate_interpolator"   
  79.         android:repeatCount="1"   
  80.            
  81.         android:fromXScale="0.5"   
  82.         android:fromYScale="0.5"   
  83.         android:toXScale="1.4"         
  84.         android:toYScale="1.4"   
  85.         android:pivotX="50%"   
  86.         android:pivotY="50%"   
  87.         android:fillAfter="false"   
  88.         android:duration="3000"   
  89.            
  90.     />   
  91.     <!--    
  92.         画面转换位置移动动画效果 translate   
  93.        
  94.         fromXDelta toXDelta 为动画、结束起始时 X坐标上的位置      
  95.         fromYDelta toYDelta 为动画、结束起始时 Y坐标上的位置   
  96.      -->   
  97.  
  98.     <translate   
  99.         android:repeatCount="2"   
  100.         android:fromXDelta="-30"   
  101.         android:fromYDelta="-30"   
  102.         android:toXDelta="-80"         
  103.         android:toYDelta="200"   
  104.         android:duration="3000"   
  105.     />   
  106.     <!--    
  107.         画面转移旋转动画效果 rotate   
  108.            
  109.         fromDegrees 为动画起始时物件的角度 说明   
  110.             当角度为负数——表示逆时针旋转   
  111.             当角度为正数——表示顺时针旋转   
  112.             (负数from——to正数:顺时针旋转)   
  113.             (负数from——to负数:逆时针旋转)   
  114.             (正数from——to正数:顺时针旋转)   
  115.             (正数from——to负数:逆时针旋转)   
  116.             toDegrees   属性为动画结束时物件旋转的角度 可以大于360度   
  117.         pivotX   
  118.         pivotY  为动画相对于物件的X、Y坐标的开始位  说明:以上两个属性值 从0%-100%中取值   
  119.         50%为物件的X或Y方向坐标上的中点位置   
  120.      -->   
  121.     <rotate   
  122.         android:interpolator="@android:anim/accelerate_interpolator"   
  123.         android:repeatCount="2"   
  124.         android:fromDegrees="0"   
  125.         android:toDegrees="+270"   
  126.         android:pivotX="50%"   
  127.         android:pivotY="50%"   
  128.         android:duration="3000"   
  129.     />   
  130.   
  131. </set>   
 用法:
         加入把此动画定义用到一个TextView上,那么需要做的工作很简单:
 
  1. Animation mAnimation ;   
  2. mAnimation = AnimationUtils.loadAnimation(this, R.anim.anim);   
  3. TextView text = (TextView)findViewById(R.id.textview00);   
  4. text.setAnimation(mAnimation);   
 
此处要注意一点:
        要用AnimationDrawable 的start()方法来启动动画,不管动画是否完毕,想要第二次启动动画一定要先调用它的stop()方法才可以再次启动动画。
 
转自http://blog.csdn.net/zhqingyun163/archive/2009/11/05/4770068.aspx

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 贴完膏药过敏了怎么办 骨折后骨密度低怎么办 食品经营许可证过期了怎么办 40年的产权满后怎么办 五证合一后税务怎么办 互联业务登录页怎么办 vivo音量键坏了怎么办 琴岛通学生卡怎么办 云卡会员删除了怎么办 办健康证没空腹怎么办 办健康证吃饭了怎么办 发票盖了财务章怎么办 发票盖成公章了怎么办 发票上盖了公章怎么办 进京证怎么办在哪里办 去北京没进京证怎么办 单位的车怎么办进京证 房贷合同丢了怎么办 农合医疗卡丢失怎么办 手指断了怎么办能好吗? 被劳务派遣公司骗了怎么办 餐饮服务许可证过期了怎么办 中行u盾证书过期怎么办 84消毒液吸多了怎么办 八四消毒液烧手怎么办 怀孕了下身痒怎么办啊 4s店态度差怎么办 小区的卡丢了怎么办 开老板的车撞了怎么办 车后保险杠撞裂怎么办 车到期了忘了审怎么办 改过气的车费油怎么办 车内容易进灰尘怎么办 东风天龙油耗高怎么办 国六出来了国五怎么办 手动挡有7个档位怎么办 东风天锦160没劲怎么办 奇骏2.0动力不足怎么办 修汽车被师傅骂怎么办 转院证明不给开怎么办 被强制退市散户怎么办