Я хочу, чтобы фильм воспроизводился так часто, как есть объекты в массиве, но я хочу убедиться, что фильм заканчивал воспроизведение каждый раз.
Вот некоторый -упрощенный- код, который, как я ожидаю, сделает именно это:
- (void)loopThroughArray {
[Array enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
NSLog (@"Index = %i", idx);
moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:url];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(moviePlayBackDidFinish:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
[moviePlayerController play];
}];
}];
}
- (void) moviePlayBackDidFinish:(NSNotification*)notification
{
moviePlayerController = [notification object];
[[NSNotificationCenter defaultCenter] removeObserver:self
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
NSLog(@"Movie playback finished");
}
К сожалению, код просто проходит через цикл, после чего воспроизводится фильм, как видно из логов:
Index = 0
Index = 1
Index = 2
Index = 3
Index = 4
Index = 5
Movie playback finished
Что я делаю неправильно?
Спасибо за ваши идеи