iOS - Как остановить фоновую музыку при смене представлений - PullRequest
2 голосов
/ 23 апреля 2011

Как остановить фоновую музыку при смене вида?Я понятия не имею.Если я нажимаю кнопку, которая выводит меня на новый экран, появляется новая фоновая музыка.Но старая фоновая музыка (которая идет в бесконечном цикле) продолжается.Пожалуйста помоги!Также, пожалуйста, пример кода, вот мой:

- (void)viewDidLoad {
    NSString *path = [[NSBundle mainBundle] pathForResource:@"MathMusic2" ofType:@"wav"];
    AVAudioPlayer* theAudio= [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
    theAudio.delegate = self;
    [theAudio play];
    theAudio.numberOfLoops = -1;

    [super viewDidLoad];
}

Мне просто нужно знать, как заставить фоновую музыку из нового представления перестать играть.И наоборот, когда я нажимаю кнопку возврата из нового вида

Ответы [ 2 ]

4 голосов
/ 23 апреля 2011

Создайте свойство для AVAudioPlayer *theAudio, чтобы вы могли получить доступ к audioPlayer из любой точки вашего класса.

Заголовочный файл viewController

... 
AVAudioPlayer *theAudio;
...
@property (nonatomic, retain) AVAudioPlayer *theAudio;

Имплантационный файл viewController

...
@synthesize theAudio;
...

- (void)viewDidLoad {
    NSString *path = [[NSBundle mainBundle] pathForResource:@"MathMusic2" ofType:@"wav"];
    self.theAudio= [[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]] autorelease];
    theAudio.delegate = self;
    [theAudio play];
    theAudio.numberOfLoops = -1;

    [super viewDidLoad];
}

Если вызывается viewWillDisappear, вы можетезатем просто остановите звук с помощью

- (void)viewWillDisappear
{
    [theAudio stop];
}
0 голосов
/ 23 сентября 2012

здесь есть ошибки: "theAudio.delegate = self;" как что-то вроде присвоения идентификатору ...

все равно желтый до сих пор, когда я меняю вид и иду в другой класс, музыка не останавливается ....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...