我正在制作一个节拍器应用程序,我的声音文件是一个非常简短的嘀嗒声,所以我需要能够改变循环之间的时间以获得每分钟正确的节拍。这是连续播放刻度声的代码。我想指定audioPlayer的每个循环之间的延迟。
NSURL *url = [NSURL fileURLWithPath:
[NSString stringWithFormat:@"%@/Metronome-Sound.mp3",
[[NSBundle mainBundle] resourcePath]]];
NSError *error;
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
audioPlayer.numberOfLoops = -1;
[audioPlayer play];
答案 0 :(得分:1)
因为iPhone中没有更多api。最简单的方法之一是在委托方法[NSThread sleepForTimeInterval:]
-(void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag
修改强>
简单的.h文件后,类名实现委托,如<AVAudioPlayerDelegate>
然后在.m文件中实现委托方法,如下所示
-(void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag
{
[NSThread sleepForTimeInterval:5.0];
}