每隔x秒以速度更新标签

时间:2011-03-23 10:53:21

标签: ios cocoa-touch nstimer cllocation

我正在开发我的第一个iPhone应用程序。我必须每隔x秒用设备速度更新一个标签。我创建了自己的CLController,我可以获得设备速度,但我不知道是否必须使用NSTimer来更新我的标签。我该怎么办?

2 个答案:

答案 0 :(得分:7)

您可以像这样安排计时器

NSTimer *myTimer = [NSTimer scheduledTimerWithTimeInterval:YOUR_INTERVAL 
                       target:self 
                       selector:@selector(updateLabel) 
                       userInfo:nil 
                       repeats:YES];

现在,下面的方法将在每个YOUR_INTERVAL(以秒为单位)

中被调用
- (void) updateLabel {
    myLabel.text = @"updated text";
}

要停止计时器,可以在计时器对象上调用invalidate。因此,您可能希望将计时器保存为成员变量,以便可以在任何地方访问它。

[timer invalidate];

答案 1 :(得分:2)

你是对的,你必须使用NSTimer。 您将在x秒后调用一个方法并更新标签。

[NSTimer scheduledTimerWithTimeInterval:x  target:self selector:@selector(updateLabel) userInfo:nil repeats:YES];

-(void)updateLabel
{
    // update your label
}