我一直在使用以下功能播放声音。
- (void) playFile:(NSString *)nameOfFile
{
NSString *tmpFileName = [[NSString alloc] initWithFormat:nameOfFile];
NSString *fileName = [[NSBundle mainBundle] pathForResource:tmpFileName
ofType:@"mp3"];
SystemSoundID soundID;
AudioServicesCreateSystemSoundID((__bridge_retained CFURLRef)
[NSURL fileURLWithPath:fileName], &soundID);
AudioServicesPlaySystemSound (soundID);
}
我注意到如果再次按下调用此按钮的按钮,则声音只会播放现有播放声音的顶部。如何增强此代码以停止再次播放声音,而不是“重启”播放文件?我应该使用不同的API播放声音吗?
答案 0 :(得分:0)
您可以使用AVAudioPlayer执行此操作,只需在init / viewdidload中分配它,然后在按下按钮时执行以下操作:
[self.player stop]
self.player.currentTime=0;
[self.player play];