2012-08-24 82 views
0

這是我的塊動畫代碼:UIView的幀序列動畫

[UIView animateWithDuration:.5f delay:15.0f options:UIViewAnimationTransitionNone animations:^{ 
     animationContainer.image = [UIImage imageNamed:@"Hear 1_00.png"]; 
    }completion:^(BOOL finished){ 
     if(! finished) return; 
     [UIView animateWithDuration:.5f delay:15.0f options:UIViewAnimationTransitionNone animations:^{ 
      animationContainer.image = [UIImage imageNamed:@"Hear 1_01.png"]; 
     }completion:^(BOOL finished){ 
      if(! finished) return; 
     }]; 

    }]; 

我想用動畫分辨率320x480(iPhone的全屏幕)幀序列。我有120張照片,如果我嘗試使用NSArray來設置動畫效果,iPhone似乎變慢了。你有建議或示例代碼,你可以與我分享或建議嗎?由於

回答

2

您應該使用內置的UIImageView動畫功能:

animationContainer.animationImages = imagesArray; 
animationContainer.animationDuration = 0.5f; 
[animationContainer startAnimating]; 

UIImageView文檔瞭解更多信息。

如果您想要圖像外觀的流暢動畫,最好使用NSTimer而不是延遲參數。只需每15秒啓動一次定時器,並以您想要的任何動畫呈現下一張圖像。確保您的圖像最小以顯示在屏幕上。因爲如果它們很大,可能需要很長時間來調整和繪製它。如果無法更改原始圖像,請在開始動畫序列之前準備調整大小的圖像數組。