Проблема запуска и остановки AVAudioPlayer - PullRequest
0 голосов
/ 10 июля 2010

У меня есть класс, в котором у меня есть аудиоплеер. В классе B у меня есть переключатель, с которого я хочу взять управление воспроизведением и остановить фоновую музыку.

Я не могу останавливаться и воспроизводить музыку через переключатель. это мой аудиоплеер в viewdidload класса A

NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/bgmusic.wav", [[NSBundle mainBundle] resourcePath]]];
NSError *error;
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
audioPlayer.numberOfLoops = -1;
[audioPlayer play];
if (audioPlayer == nil) NSLog([error description]);
else [audioPlayer play];

это класс B

-(IBAction) musicValueChanged:(id)sender{    
if (musicSwitch.on) { 
    isStopped = FALSE;
    firstViewController.player.currentTime = 0;
    [firstViewController.audioPlayer play];
 }else {
    [firstViewController.audioPlayer volume:0];
 }
}

Как я могу это сделать?

1 Ответ

1 голос
/ 10 июля 2010

Пока метод вызывается, а musicSwitch.on имеет значение, это должно работать:

- (IBAction) musicValueChanged: (id) sender {

if (musicSwitch.on) { 
    isStopped = FALSE;
    firstViewController.player.currentTime = 0;
    [firstViewController.audioPlayer play];
 }else {
    [firstViewController.audioPlayer stop];
 }
}

См.AVAudioPlayer документы.

...