这是我的下一个和上一个按钮功能。在这里,我想播放第一个声音,然后想播放第二个,依此类推。
出现问题:第一个声音被中断,第二个声音被调用播放。理想情况下,我希望仅当且仅当第一个声音完成时才开始第二个声音。
if (counter <= [textStr count]) {
counter++;
NSLog(@"%i", counter);
[stgImage1 setImage:[UIImage imageNamed:[imageStr objectAtIndex:counter]]];
stgText1.text= [NSString stringWithFormat:@"%@", [textStr objectAtIndex:counter]];
if (counter == 0) {
stgImage1.frame = CGRectMake(300, 120, 263, 263);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"eggDance" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if(counter == 1) {
stgImage1.frame = CGRectMake(330, 150, 147, 209);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"clownDance" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if(counter == 2) {
stgImage1.frame = CGRectMake(380, 120, 104, 237);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"drumperDrum" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if(counter == 3) {
stgImage1.frame = CGRectMake(370, 120, 154, 253);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"ladyPlay" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if(counter == 4) {
stgImage1.frame = CGRectMake(330, 60, 241, 298);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"boyPlayBall" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if(counter == 5) {
stgImage1.frame = CGRectMake(350, 90, 144, 262);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"boyPlayBalloons" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if(counter == 6) {
stgImage1.frame = CGRectMake(340, 160, 138, 198);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"boyRideCycle" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if(counter == 7) {
stgImage1.frame = CGRectMake(320, 40, 201, 317);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"girlBlowBubbles" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if(counter == 8) {
stgImage1.frame = CGRectMake(330, 70, 202, 268);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"dollDance" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if(counter == 9) {
stgImage1.frame = CGRectMake(320, 100, 241, 245);
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"chickenDance" ofType:@"wav"];
AudioServicesCreateSystemSoundID(CFBridgingRetain([NSURL fileURLWithPath:soundPath]), &soundID);
AudioServicesPlaySystemSound (soundID);
}
if (counter >= 10) {
counter = 0;
[self initArray];
}
}
帮我。