2010-07-16 66 views
2

嘿,試圖把一個簡單的PNG序列動畫到我的應用程序。我在IB中安裝了第一個框架,並且連接了它的graphanimation出口。 在序列中有54個png,名稱爲「Comp 1_0000.png」至「Comp 1_00053.png」iphone imageview序列動畫

這是我的代碼。

-(void)viewDidLoad{ 
for (int i=0; i<53; i++) { 
     graphanimation.animationImages = [NSArray arrayWithObjects: 
          [UIImage imageNamed:@"Comp 1_000%d.png",i]]; 
    } 
    graphanimation.animationDuration = 1.00; 
graphanimation.animationRepeatCount = 1; 
[graphanimation startAnimating]; 
[self.view addSubview:graphanimation]; 
    [super viewDidLoad];  
} 

我認爲我用i整數引用圖像文件名的方式有問題。有人可以幫我排序這個吸盤嗎? 謝謝!

回答

4

您無法將可變參數列表和格式參數傳遞給[UIImage imageNamed:]。

嘗試這樣的事情嗎?

... 
NSMutableArray *array = [NSMutableArray arrayWithCapacity:54]; 
for (int i = 0; i < 54; ++i) { 
    NSString *name = [NSString stringWithFormat:@"Comp 1_000%d.png",i]; 
    UIImage *image = [UIImage imageNamed:name]; 
    [array addObject:image]; 
} 
graphAnimation.animationImages = array; 
... 
+1

謝謝! 只是我發現的東西: 動畫結束並恢復顯示第一幀。要讓它顯示最後一幀,只需將UIImageView更改爲Interface Builder中的最後一幀圖像即可。 – Hippocrates 2010-07-16 14:49:42