Search

Android - 使用 ObjectAnimator 實現動畫效果

2015-11-17 12:51 PM

之前在開發 Flash 及 Javascript 上的介面時

我習慣用 GreenSock 開發的 TweenLite Library

因為他的執行效率非常好 而且使用也很方便直覺

但可惜的是他沒有支援 Android

而在另一篇介紹的 TweenEngine 雖然使用上很類似

詳見 Android - 使用 Tweener 加入互動特效

可是常常會出現動畫效果出不來或是直接報錯給你看

於是就萌生了使用原生 Android 動畫 API 的想法

以下就來介紹 ObjectAnimator 的使用方法

這裡將以淡出 View 為範例 並在完全淡出後設定 Visible 為 GONE

程式碼範例
  1. // 建立動畫操作物件
  2. ObjectAnimator objectAnimator = ObjectAnimator
  3. // 指定動畫效果
  4. .ofFloat(articleAuthorDataHolder, "alpha", 1.0f, 0.0f)
  5. // 指定動畫時間長度
  6. .setDuration(300);
  7.  
  8. // 加入動畫監聽
  9. objectAnimator.addListener(new Animator.AnimatorListener() {
  10. @Override
  11. public void onAnimationStart(Animator animation) {
  12.  
  13. }
  14.  
  15. // 動畫執行完成後將 View 設定為 GONE
  16. @Override
  17. public void onAnimationEnd(Animator animation) {
  18. articleAuthorDataHolder.setVisibility(View.GONE);
  19. }
  20.  
  21. @Override
  22. public void onAnimationCancel(Animator animation) {
  23.  
  24. }
  25.  
  26. @Override
  27. public void onAnimationRepeat(Animator animation) {
  28.  
  29. }
  30. });
  31.  
  32. // 開始動畫
  33. objectAnimator.start();
  34.  
各項資料連結
Android - 使用 Tweener 加入互動特效
Android - ObjectAnimator

No comments:

Post a Comment