2015-01-27 3 views
0

Я потратил более или менее большую часть из них на то, как работать с аудиофайлом после завершения воспроизведения другого аудиофайла.выражение результат не использовался on for loop

Я пробовал аудиоплеерDidFinishPlaying, с которым у меня был ограниченный успех, поскольку он воспроизводил второй аудиофайл при воспроизведении других аудиофайлов. Таким образом, он воспроизводился, когда был воспроизведен любой звуковой файл, и я хотел, чтобы он воспроизводился только при воспроизведении определенного аудиофайла. Я также обнаружил, что на некоторых устройствах звук застревает в цикле, поэтому он обрабатывал файл, который был запущен для воспроизведения в аудиоплеереDidFinishPlaying, и снова воспроизводил файл.

Как бы то ни было, он весь день измельчал меня, и я разбился.

В любом случае, я нашел решение, и он отлично работает для того, что я хотел, но я получаю предупреждение о том, что я не могу решить, как его решить.

NSArray *theSoundArray = [NSArray arrayWithObjects:@"dog-00-voice",@"dog-00",nil]; 

    int totalSoundsInQueue = [theSoundArray count]; 

    for (int i=0; i < totalSoundsInQueue; i) { 

     NSLog(@"%d", i); 

     NSString *sound = [theSoundArray objectAtIndex:i]; 

     // Wait until the audio player is not playing anything 
     while(![arraySounds isPlaying]){ 

      AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] 
                             pathForResource:sound ofType:@"mp3"]] error:NULL]; 
      self.arraySounds = player; 
      [arraySounds setVolume:1.0f]; 
      [arraySounds play]; 
      i++; 
      NSLog(@"%d", i); 
     } 
    } 

Это работает, но я получаю предупреждение для i в конце строки цикла for. «Результат Expression неиспользованными.

Может кто-нибудь мне помочь либо решить эту проблему или сообщить мне о том, как я могу получить audioPlayerDidFinishPlaying работать, как описано выше.

Спасибо заранее

+0

Удалите это я оттуда –

ответ

0

Вы просто можете сделать это путем удаления что i оттуда:.

for (int i=0; i < totalSoundsInQueue;) 
{ 
    ... 
} 

Вы также можете это исправить, написав i = i, но это не является необходимым и не рекомендуется

+0

Ах, извините. Я думал, что попробовал - это был долгий день. Спасибо за Ваш ответ. –

+0

@DanDavies: Добро пожаловать, Счастливое кодирование :) –

Смежные вопросы