2011-10-27 21 views
0

我希望能夠在一個按鈕上按下一個接一個播放2個獨立的聲音文件(wav)。我用於播放的代碼是:單擊一個按鈕播放2個單獨的聲音文件(wav),一個接一個

NSString *path = [[NSBundle mainBundle] pathForResource:@"Applause" ofType:@"wav"]; 
     AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; 
     theAudio.delegate = self; 
     [theAudio play]; 

你知道如何修改這個可以播放2聲音或我需要創建另一個動作。

感謝您的幫助。

回答

0

您可以實現delegate method開始下一個聲音:

- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag 



    AVAudioPlayer* theAudio1=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:filePath1] error:NULL]; 
    AVAudioPlayer* theAudio2=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:filePath2] error:NULL]; 
    theAudio1.delegate = self; 
    [theAudio1 play]; 

- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag { 
    [theAudio2 play];  
} 
+0

謝謝您的幫助,我是新來這個所以請原諒我的無知,我將包括.h文件即這些方法 - (空)audioPlayerDidFinishPlaying;並按照您的代碼在.m文件中的建議來執行? – TJ15

+0

不,你不需要在.h中聲明委託方法 –

相關問題