我有几个视图,其中一个是“选项”视图,在这个视图中会出现一个按钮,允许用户点击一个按钮来“停止”背景音乐,或者点击它来打开它回来。林相当肯定,我有如何做到这一点的一般想法,问题是,我的代码没有工作,我不知道为什么。让我的背景音乐播放器停止? Objective C
这是从执行文件中的代码为“选项”类:
- (IBAction)musicIO:(id)sender {
MenuViewController *myMusicPlayer = [[MenuViewController alloc] init];
[myMusicPlayer backgroundMusicStart];
}
它调用我的菜单代码的方法(不同类)
这是我的菜单代码:
-(IBAction) backgroundMusicStart{
if(i != 1){
NSURL * URL = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/backgroundMusic.wav", [[NSBundle mainBundle] resourcePath]]];
NSError *error;
backgroundPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:URL error:&error];
backgroundPlayer.numberOfLoops = -1;
[backgroundPlayer play];
i = 1;
NSLog(@"In start music");
}
else if (i == 1) {
[backgroundPlayer stop];
i = 0;
NSLog(@"In stop music");
}
}
“i”是全局声明的变量。
它的代码问题: 它运行,NSLog输出,它得到两个if语句罚款,问题是当它在[backgroundPlayer停止]括号,它不停止音乐,我无法弄清楚为什么。
根据你的使用情况是什么,你可能想使用暂停,而不是止损,确定要使用哪一个取决于您是否希望[播放恢复或重新启动](http://developer.apple.com/library/ios/#DOCUMENTATION/AVFoundation/Reference/AVAudioPlayerClassReference/Reference/Reference.html)。 – hd1 2013-04-24 03:29:44
我想让它停下来。 – 2013-04-24 03:31:52
将nslog更改为NSLog(@“停止音乐%@”,backgroundPlayer);并查看后台播放器是否为 – 2013-04-24 03:34:04