我有一个显示电影的应用程序。第一个屏幕显示呈现不同模态视图的按钮。在这些模态视图中是播放视频的按钮。
我希望主菜单播放音乐(足够简单),但我想让它在第二个模态视图中保留,但在视频开始播放时停止播放。
按下电影按钮时,我尝试[audioPlayer stop],但音乐一直在播放。
我尝试在viewDidAppear和viewDidDisappear中停止并播放音频。这使得音频在呈现第二个视图时重新启动,而不是在视频中播放。
我希望这是有道理的,我真的只需要知道如何让音频一直播放(在两个或三个模态视图中),除了在电影播放期间。
这是我的vewDidAppear
方法:
-(void)viewDidAppear:(BOOL)animated {
NSString *musicPath = [[NSBundle mainBundle] pathForResource: @"Intro Music" ofType:@"mp3"];
if(musicPath) {
NSURL *musicURL = [NSURL fileURLWithPath:musicPath];
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:musicURL error:nil];
[musicURL release];
}
if(!audioPlayer.playing) {
[audioPlayer play]
}
}
答案 0 :(得分:1)
您的模态视图控制器正在尝试停止其中不存在的audioPlayer
。 mainMenueViewController
有audioPlayer
,因此 it 必须是告诉音频播放器停止的那个。
您可以使用NSNotifications。每个NSNotification都通过单身NSNotificationCenter发送。以下是适合您情况的基本步骤:
希望这有帮助!