动画UILabel文本

时间:2013-06-23 13:47:14

标签: ios jquery-animate uilabel progress

我是iOS编程的新手,我有一个问题: 我想制作一种自定义进度条。我创建了2 UIView个,一个在另一个之上,并使用以下代码为前UIView设置了动画:

[UIView animateWithDuration:1.5f delay:1.0f options:UIViewAnimationOptionCurveEaseInOut animations:^{
       [barCima setFrame:CGRectMake(10, 300, value, 30)];
    }
                     completion:nil];

但是现在,我想做更多的事情。我希望在宽度栏增长时,会出现UILabel的当前值。示例:我将de value设置为300.在动画发生时,UILabel显示进度,直到达到300(1,2,3,4,5,6,7 ,. ..,300)。

1 个答案:

答案 0 :(得分:2)

你需要每隔一秒左右开火的NSTimer和一个计数器。每当NSTimer触发时,计数器都会递增,UILabel的文本将会更新。看起来应该是这样的

int _counter; // An instance var

self.timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timerFired) userInfo:nil repeats: YES];
// Be sure you call [self.timer invalidate] when you don't need it anymore

...

-(void)timerFired {
    ++ _counter;
    self.label.text = [NSString stringWithFormat:@"%i", _counter];
}
祝你好运,以为我不知道你用的是什么进步吧!