在我的应用程序中我有2个视图:在1-st中有一个带有音频文件的tableview。什么时候触摸手机AVAudioPlayer开始播放。当我进入第二视图AVAudioPlayer继续播放,当我返回到第一视图继续播放时。但是从这一刻开始出现问题:当我触摸其他手机时开始播放此曲目和之前以及当我再次触摸同时播放3首曲目时。因此我的按钮“播放/暂停”在错误之后工作。我该如何解决这个错误?在每个viewDidLoad中我创建AVAudioPlayer的新对象并为其指定前一个对象的值
(void)viewDidLoad {
[self.traxbax.avAudioPlayer stop];
audioPlayer=self.traxbax.avAudioPlayer;
[self.traxbax.avAudioPlayer release];
[audioPlayer play];
}
(void)viewDidLoad
{
[self.bmvc.audioPlayer stop];
avAudioPlayer=self.bmvc.audioPlayer;
[self.bmvc.audioPlayer release];
[avAudioPlayer play];
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
}
答案 0 :(得分:0)
发布AVAudioPlayer肯定有些麻烦。您可以尝试添加释放后的行:
self.bmvc.audioPlayer = nil;
顺便说一句:不太明白你为什么在最后一行有[super viewDidLoad]。它假设是该方法的第一行。