Спасибо за помощь, у меня есть проигрыватель фильмов, и я хочу, чтобы пользователь не вычищался вперед по фильму, но мне все равно, если они вернутся назад (перемотка назад). Я обнаруживаю, когда состояние воспроизведения меняется, а затем тестирование для «MPMoviePlayerDidSeekingForward»MPMoviePlayer, как вы обнаруживаете ТОЛЬКО, когда пользователь ищет вперед?
Проблема в том, что воспроизведениеState ALLWAYS ищет вперед, когда я счищаю независимо от направления.
По различным причинам я не могу сделать свой собственный пользовательский плеер, мне нужно работать со стандартным MPMoviePlayer.
Вот код:
- (void)moviePlayerPlaybackStateDidChangeNotificationReceived:(NSNotification *)notification {
//movie playback has started go to full screen.
if(_player.fullscreen == NO){
_player.fullscreen = YES;
}
//prevent user from scrubbing through the movie
// #ifdef DEBUG
//
// return;
// #else
if(_player.playbackState == MPMoviePlaybackStateSeekingForward){
NSString *alertMessage = [NSString stringWithFormat:@"you are not allowed to skip the movies"
UIAlertView *alert =
[[UIAlertView alloc] initWithTitle: @"Warning"
message: alertMessage
delegate: self
cancelButtonTitle: @"Continue"
otherButtonTitles: @"Stop", nil];
self.isShowing = YES;
[alert show];
[_player pause];
_player.fullscreen = NO;
}
// #endif
Нельзя ли просто отследить, какое изменение позиции было между двумя событиями? – millimoose
Я предполагаю, что вы хотите проверить текущую среду выполнения на новом месте воспроизведения? Проблема с этим заключается в поддержании таймера, который точно соответствует местоположению головки воспроизведения, поэтому я переключился, чтобы просто попытаться определить направление очистки. – Nathan