如何在用户离开视图时停止播放音频

问题描述:

我有一个音频文件,当用户单击一个视图时播放。我的问题是,如果他们移动到另一个视图音频继续播放。如果用户不在该视图中,我希望音频停止。如何在用户离开视图时停止播放音频

这是在viewDidUnload方法中完成的吗?

这里有一个15秒的延迟之后播放音频代码:

-(void)startPlaying { 

    [NSTimer scheduledTimerWithTimeInterval:15 target:self selector:@selector(startPlaying) userInfo:nil repeats:NO]; 


    NSString *audioSoundPath = [[ NSBundle mainBundle] pathForResource:@"audio_file" ofType:@"caf"]; 

    CFURLRef audioURL = (CFURLRef) [NSURL fileURLWithPath:audioSoundPath]; 
    AudioServicesCreateSystemSoundID(audioURL, &audioID); 
    AudioServicesPlaySystemSound(audioID); 
} 

感谢您的帮助。

-(void)viewWillDisappear:(BOOL)animated { 
    [super viewWillDisappear:animated]; 
    // Stop Sound 
} 

- (无效)viewWillDisappear:(BOOL)动画{ [超级viewWillDisappear:动画];

AudioServicesDisposeSystemSoundID(audioID); 

}