Я использую таймер, чтобы проверить текущую длительность, а затем обновить свой прогресс бар каждого полсекунды, например, так:
tmrCounter = [NSTimer scheduledTimerWithTimeInterval:0.5f target:self selector:@selector(updateElapsedTime) userInfo:nil repeats:YES];
-(void)updateElapsedTime{
if (player) {
[prgIndicator setProgress:[player currentTime]/[player duration]];
[lblTime setText:[NSString stringWithFormat:@"%@", [self formatTime:[player currentTime]]]];
}
}
-(NSString*)formatTime:(float)time{
int minutes = time/60;
int seconds = (int)time % 60;
return [NSString stringWithFormat:@"%@%d:%@%d", minutes/10 ? [NSString stringWithFormat:@"%d", minutes/10] : @"", minutes % 10, [NSString stringWithFormat:@"%d", seconds/10], seconds % 10];
}
Надеется, что это помогает!
BTW Я использую класс AVAudioPlayer для воспроизведения своего аудио. –