Android 台灣中文網

標題: android開發(9) 漸變動畫演示(Tween Animation) [打印本頁]

作者: 暗桌之光    時間: 2011-7-10 15:41
標題: android開發(9) 漸變動畫演示(Tween Animation)
在Android SDK介紹了兩種Animation:
1. Tween Animation:通過對場景裡的對象不斷做圖像變換(平移、縮放、旋轉)產生動畫效果,即是一種漸變動畫,或者說 補間動畫。
2. Frame Animation:順序播放事先做好的圖像,是一種畫面轉換動畫,或者說 逐幀動畫。
----------------------------
我們本文先瞭解下漸變動畫,下一篇文章瞭解逐幀動畫
漸變動畫的4種animation
alpha        漸變透明度動畫效果
scale        漸變尺寸伸縮動畫效果
translate  畫面轉換位置移動動畫效果
rotate      畫面轉移旋轉動畫效果
實現動畫的步驟:
1.準備一個animation對象,改對象可以看作是個動畫對象,它描述(封裝)了什麼樣式的動畫。
我們可以在代碼裡手動創建這些對象,對應的4個animaiton對像類:
AlphaAnimation漸變透明度動畫效果
ScaleAnimation漸變尺寸伸縮動畫效果
TranslateAnimation畫面轉換位置移動動畫效果
RotateAnimation畫面轉移旋轉動畫效果

我也可以寫一個描述動畫的xml文件,放到資源文件的anim文件夾下。然後,在代碼裡加載(load)這個描述的文件:
  1. int animationSrouceId  = 0;//資源文件的ID
  2. Animation ani1 = AnimationUtils.loadAnimation(
  3.        getApplicationContext(), animationSrouceId);
  4.   return ani1;
複製代碼
2.為view視圖控件 指定 啟動動畫,調用startAnimation方法來完成。
  1.      //組件播放動畫
  2.      ImageView _imageView1;   
  3.      _imageView1 = (ImageView)findViewById(R.id.imageView1);
  4.      _imageView1.startAnimation(ani1);
複製代碼
-------------
下圖是我做的DEMO截圖,動畫的樣式很難截圖上來。我會在本文末尾放上源代碼。
a1.png
登錄/註冊後可看大圖