在iphone中循环和使用背景音乐的最佳方式?

问题描述:

可以说我在屏幕上拖动我的手指,我的包中有1秒.caf声音文件。在iphone中循环和使用背景音乐的最佳方式?

那么什么是最好的方式来播放我的声音文件,直到我拖动我的手指。它应该停止,只要我删除触摸。

我知道触动实施。只要发表你对使用声音文件的看法。

请参阅AVAudioPlayer类,它对我的​​问题描述的类似行为非常好。

+0

所以你的意思是说最好的方法是首先创建AVAudioPlayer *播放器的对象。我每次都必须打电话给[播放器播放]和[播放器暂停]? – Tariq

+0

不,您可以将属性'@property NSInteger numberOfLoops'设置为“任何负值,以无限循环声音,直到您调用'stop'方法。” – petert

+0

我知道它创造了无限循环的-1概念。但是我需要触摸摸上去......只要触碰结束就应该停止。所以,直到touchesMoved我必须创建无限循环,当touchesEnded我必须调用停止或暂停?因为我必须再次重新启动whenevr touchesMoved调用。 – Tariq

这就是我做到的。目前,我不知道更有效的方法......但这是我用来循环播放背景声音的方法。希望这可以帮助。

NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/yourAudio.caf", [[NSBundle mainBundle] resourcePath]]]; 

audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:NULL]; 
audioPlayer.numberOfLoops = -1; 
[audioPlayer play];