- (IBAction)triggerSound {
if (player == nil) {
NSError *error;
player = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
} else if ([player isPlaying]) {
[player stop];
player.currentTime = 0;
}
if (![player play]) {
NSLog(@"fail");
}
}
其中播放器是AVAudioPlayer,此操作与UIButton链接。声音可以播放,并且可以在声音结束后再次播放,但是当我在播放过程中再次按下该按钮时,会记录“失败”消息并且无法播放声音,无任何例外。
我和iPad一起使用iOS 4.2.1。
答案 0 :(得分:0)
我注意到在调用stop之后音频流无法播放(根据引用取消了prepareToPlay和播放的内容)。
,而不是调用stop,将currentTime设置为player.duration(流的结尾)