如何判断 AVAudioPlayer 已经播放完毕

2023-12-24

我正在开发一个使用以下方式播放声音的应用程序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)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag, 这里有一个参考 https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVAudioPlayerDelegateProtocolReference/Reference/Reference.html#//apple_ref/doc/uid/TP40008068

希望能帮助到你

Daniel

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何判断 AVAudioPlayer 已经播放完毕 的相关文章

随机推荐