Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> android animation的應用實例

android animation的應用實例

編輯:Android開發實例

此文件名為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
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved