Довольно просто, я использую одну кнопку, которая генерирует случайное число, а затем с помощью переключателя/футляра, он оживляет изображение и воспроизводит звук. Моя проблема заключается в том, что при повторном нажатии кнопки звук, который воспроизводился раньше, не останавливается, и звук перекрывается.Остановите звук, используя ту же самую кнопку, которая воспроизводит его
Вот код:
- (IBAction) pushme: (id) sender{
int random = (arc4random()%10);
switch (random) {
case 0: {
[ANIMATION NUMBER 0]
NSString *path = [NSString stringWithFormat:@"%@%@",[[NSBundle mainBundle] resourcePath],@"/sound0.wav"];
SystemSoundID soundID;
NSURL *filePath = [NSURL fileURLWithPath:path isDirectory:NO];
AudioServicesCreateSystemSoundID((CFURLRef)filePath, &soundID);
AudioServicesPlaySystemSound(soundID);
}
break;
case 1: {
[ANIMATION NUMBER 1]
NSString *path = [NSString stringWithFormat:@"%@%@",[[NSBundle mainBundle] resourcePath],@"/sound1.wav"];
SystemSoundID soundID;
NSURL *filePath = [NSURL fileURLWithPath:path isDirectory:NO];
AudioServicesCreateSystemSoundID((CFURLRef)filePath, &soundID);
AudioServicesPlaySystemSound(soundID);
} break; //Lots more cases after this one
Я знаю, что это не самый лучший способ сделать это, объявляя ту же переменную снова и снова. , но есть ли способ остановить его, прежде чем он сыграет другой?
LOL Я только что открыл ответ на свой вопрос. – Nicolas
Отлично! Пожалуйста, напишите ответ здесь, чтобы другие могли воспользоваться вашими исследованиями. –
добавлено :) очень просто – Nicolas