avaudioplayer完成播放后请求回叫或通知

时间:2013-03-26 12:18:29

标签: iphone ios objective-c avaudioplayer

我在音频播放器模块中工作,它需要一个音频文件并播放。我正在使用AvAudioPlayer播放我的音频文件,它按预期工作,一旦完成音频播放,我就会收到回叫。我已经通过 numberOfLoops 属性实现了带负值的循环到目前为止它是好的。在一个案例中,我需要在当前音频完成第一次播放时回叫。有没有办法让回叫或观察者通知我第一次播放我的音频。

我的想法是我们可以通过运行计时器来实现这一目标。什么是最好的方法?

通用 每次完成音频回放预期通知,即使它也有无限循环。

1 个答案:

答案 0 :(得分:4)

首先使numberofloops = 0 使用这个委托方法所以这个方法会调用, - (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)appSoundPlayer成功:( BOOL)标志

然后在那个方法中,你可以使numberofloops = -1,这样你就可以得到第一个通知,然后继续循环。和[玩家玩] ..

如果你在audioPlayerDidFinishPlaying和play中写numberofloops = 0,那么每次audioPlayerDidFinishPlaying都会调用loop..and你可以得到每个的通知..