Ios 如何判断AVAudioPlayer已完成播放
我正在开发一个使用Ios 如何判断AVAudioPlayer已完成播放,ios,objective-c,ios7,xcode5,avaudioplayer,Ios,Objective C,Ios7,Xcode5,Avaudioplayer,我正在开发一个使用AVAudioPlayer播放声音的应用程序,我想知道声音何时播放完毕。我想在声音停止播放时更改图像 下面是我用来创建播放器的代码: NSURL* url = [[NSBundle mainBundle] URLForResource:@"LOLManFace1" withExtension:@"mp3"]; NSAssert(url, @"URL is valid."); NSError* error = nil; self.player = [[AVAudioPlayer
AVAudioPlayer
播放声音的应用程序,我想知道声音何时播放完毕。我想在声音停止播放时更改图像
下面是我用来创建播放器的代码:
NSURL* url = [[NSBundle mainBundle] URLForResource:@"LOLManFace1" withExtension:@"mp3"];
NSAssert(url, @"URL is valid.");
NSError* error = nil;
self.player = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&url];error;
if(!self.player)
{
NSLog(@"Error creating player: %@", error);
}
下面是我用来播放声音的代码:
[self.player play];
我怎么知道播放已经结束
提前非常感谢 看看AVAudioPlayerDelegate协议,该协议有一种方法可以告诉学员音频播放何时完成,特别是您要查找的是
-(void)AudioPlayerDifinishPlaying:(AVAudioPlayer*)player successfully:(BOOL)标志
,下面是一个
希望能有帮助
丹尼尔很久以前,我敢肯定你在某一点上就明白了。如果有人读了这篇文章: 1) 您的类应该实现AVAudioPlayerDelegate。() 委托方法之一是:
audioPlayerDidFinishPlaying:successfully:
2) 设置委托:
self.player.delegate = self
您好,谢谢您的回答,我在按钮操作中调用[self AudioPlayerDifinishPlaying:self.player successfully:YES],但在if语句中,我想知道声音是否结束,但出现了一个错误,我如何将其放在if上才能更改图像?您没有正确使用此选项,请参阅以查看协议和代理的工作流程