我建立一个应用程序,教孩子们如何说拼字游戏拼图形式的字母表中的字母组成的图像制成的字母。每次点击一次就会产生咔嗒声,当它们完成时,它会播放出完美的声音,然后再按下该字母的声音,当他们点击该字母时,它也会播放该字母的声音。理论上很简单,但对于像我这样的新手来说很复杂从数组中播放Wav文件
我有40个声音我想加载到一个数组中,然后能够在用户单击某个字母或对象时的任何给定时间单独调用每个声音。
我已经成功设法使用我在网上找到的一个基本例子加载单个声音,但是我的需求比单个声音大得多,我觉得数组会更好地适合,除非您可以建议更好的方法?
下面的代码检测用户是否将拼图放在正确的位置,然后播放声音以显示其位置。我告诉你这个只是解释我迄今为止所做的事情,我意识到这将需要重新与数组。
请任何人都可以告诉我如何创建一个声音数组,然后选择一个特定的声音播放一个给定的点。
非常感谢
{
UITouch *touch = [[event allTouches]anyObject];
CGPoint touchLocation = [touch
locationInView:self.view];
if ([touch view] == image1)
{
CGRect rect1= CGRectMake(562, 260, 103, 302);
if(CGRectContainsPoint(rect1,touchLocation))
{
CGRect myFrame = image1.frame;
myFrame.origin.x = 562;
myFrame.origin.y = 260;
image1.frame = myFrame;
imagea =true;
[image1 setUserInteractionEnabled:NO];
NSURL* audioFileURL1 = [[NSBundle mainBundle] URLForResource:@"mouse1" withExtension:@"wav"];
sound1 = [[AVAudioPlayer alloc] initWithContentsOfURL:audioFileURL1 error:nil];
[sound1 play];
if(imagea && imageb && imagec) {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"WELL DONE!!"
message:@"You have learnt the letter A"
delegate:nil
cancelButtonTitle:@"Continue"
otherButtonTitles: nil];
[alert show];
NSLog(@"All images set and locked in place");}
}
}
这听起来合乎逻辑,但是我会给出40个声音,并且只有26个声音会与某个字母或图像相关。其他人将是应用程序的声音效果。我可能会为这些字母和字母创建一个plist。然而,将它们分开是更好的办法吗? – user3246508
你可以有两个plists,一个用于字母,一个用于其他声音。取决于你想如何真正使用它们。很难说如果不知道你的应用程序应该如何工作。 – jsd
对不起,我应该给予更多的细节。基本上它是一个应用程序,它教孩子们如何用拼图形式拼写字母表中的字母,拼成由图像组成的字母。每次点击一次就会产生咔嗒声,当它们完成时,它会播放出完美的声音,然后再按下该字母的声音,当他们点击该字母时,它也会播放该字母的声音。理论上很简单,但对于像我这样的新手来说很复杂 – user3246508