2009-07-31 27 views
0

我在Objective-C中为iPhone编码,我正在尝试创建一个播放一系列声音的数组。例如我第一次按下按钮,我希望它播放声音“0.wav”,但第二次,我希望它发挥“1.wav”,然后“2.wav”“ 3.wav“等等。然后当我播放了总共14种声音(高达”13.wav“)时,我希望循环重新开始播放0.wav。我已经浏览了谷歌和苹果开发文档近4天,没有多少运气。所以如果有人能够帮助我为此产生一个代码,这将是不胜感激,如果你不介意可以尝试简单地解释代码,以便我可以了解每个部分的作用。如何使用数组以某种顺序播放按钮?

谢谢你,乔伊


编辑

好吧,我已经得到了阵列部分下降(感谢托马斯),但是我们都不是确定如何从数组实现soundID到播放声音的动作以及如何播放声音。如果能够帮助您解答问题的话,我会在下面的数组中使用Thomas用于他的数组的格式。

谢谢,乔伊

+0

你寻求帮助你将如何让一个按钮访问数组的每个它按一次新的元素,或者你会怎么走一个.wav文件并播放它? – smorgan 2009-07-31 05:14:48

+0

嗯,我真的想问如何实现,如何访问数组的新元素,然后在一个简单的步骤中播放这个新元素。 – JoeyParis 2009-07-31 07:52:12

回答

0

首先,创建不同声音的阵列和一个变量来保存当前索引:

NSArray *sounds = [[NSArray alloc] initWithObjects:@"0.wav", @"1.wav", nil]; // add all your files here 
NSUInteger currentSound = 0; 

然后,当你处理你的按钮窃听事件,去到下一个声音,并播放它。如果这是你的NSArray结束,回去指数0:

currentSound++; 
if (currentSound >= [sounds count]) { 
    currentSound = 0; 
} 

// play the sound. Just call your own method here 
[self playSoundWithFilename:[sounds objectAtIndex:currentSound]];