Обновляйте метку со скоростью каждые x секунд - PullRequest
3 голосов
/ 23 марта 2011

Я разрабатываю свое первое приложение для iPhone.Я должен обновлять метку со скоростью устройства каждые х секунд.Я создал свой собственный CLController, и я могу получить скорость устройства, но я не знаю, нужно ли мне использовать NSTimer для обновления моего ярлыка.Как я могу это сделать?

Ответы [ 2 ]

7 голосов
/ 23 марта 2011

Вы можете запланировать таймер, как это

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

Теперь указанный ниже метод будет вызываться через каждые YOUR_INTERVAL (в секундах) периодах

- (void) updateLabel {
    myLabel.text = @"updated text";
}

Чтобы остановить таймер, вы можете вызвать инвалидом объект таймера. Поэтому вы можете сохранить таймер как переменную-член, чтобы иметь к нему доступ в любом месте.

[timer invalidate];
2 голосов
/ 23 марта 2011

вы правы, вы должны использовать NSTimer. Вы будете вызывать один метод через x секунд и обновлять метку.

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

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