Вопрос

In my app i am using audio. I want to play audio for unlimited time on tapping button. Is it possible?

Это было полезно?

Решение 2

Easiest way is to re-play the player when it reaches the end :

-(void)startPlayer {

    NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"sound" ofType:@"mp3"]];
    NSError *error;
    player = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
    player.delegate = self;
    if (error) {
        NSLog(@"Error in audioPlayer: %@", [error localizedDescription]);
    } else {
        [aPlayer play];
    }
}

- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)aPlayer successfully:(BOOL)flag {

    aPlayer.currentTime = 0;
    [aPlayer play];
}

Call [self startPlayer]; once, and it will loop forever !

Другие советы

AVAudioPlayer has a numberOfLoops method. Set that to -1 for unlimited repetition.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top