2012-03-17 61 views
0

我想動畫從1開始增加數字到一個限制(變量),動畫的持續時間是1.5秒。每次當我把這個動畫應該工作方法時間(動畫從0增量(例如:70) INT J = 1;如何做在xcode中增加數字動畫

[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration: 1.5]; 
[UIView setAnimationDelegate: self]; 

do{ 
self.label.text=[NSString stringWithFormat:@"%ï", j]; 
} 

while(j<=limit); 

[UIView commitAnimations]; 

請幫忙動畫數字的遞增......。 。

回答

3

你不能做這樣的事情只能動畫視圖的animatable properties它們是:。frameboundscentertransformalphabackgroundColorcontentStretch

你想使用NSTimer每1.5秒更新一次標籤。

也許類似的規定:

- (void)startAnimationWithLimit:(NSInteger)limit { 
    self.limit = limit; 
    self.timerFireCount = 0; 
    [self.timer invalidate];  // stop timer if one is running already 
    self.timer = [NSTimer scheduledTimerWithTimeInterval:1.5f target:self selector:@selector(timerFired:) userInfo:nil repeats:YES]; 
} 

- (void)timerFired:(NSTimer *)timer { 
    self.timerFireCount++; 
    self.label.text = [NSString stringWithFormat:@"%i", self.timerFireCount]; 
    if (self.timerFireCount > self.limit) { 
     [timer invalidate]; 
     self.timer = nil; 
     self.label.text = @"Press start"; 
    } 
} 

,然後用[self startAnimationWithLimit:70];

+0

啓動定時器謝謝你這麼much..for答案。其實我是xcode的新手 – faris 2012-03-17 09:38:05