按下按钮时播放音频

时间:2012-03-07 15:35:31

标签: ios

我一直在使用以下功能播放声音。

- (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播放声音吗?

1 个答案:

答案 0 :(得分:0)

您可以使用AVAudioPlayer执行此操作,只需在init / viewdidload中分配它,然后在按下按钮时执行以下操作:

[self.player stop]
self.player.currentTime=0;
[self.player play];
相关问题