0

В моем приложении Im воспроизводит видео с помощью MPmoviePlayerViewController.Как отобразить кнопку пропустить, чтобы закрыть MPmoviePlayerViewController в 10 секунд воспроизведения видео

На самом деле некоторые видеоролики слишком длинные, чтобы смотреть около 3-5 минут.

Я хочу разрешить пользователю Пропустить видео через 10 секунд, если он хочет.

Мое требование: Мне нужно отобразить счет 10, 9, 8 - 0 после 10-го секса видео, которое мы показываем кнопкой пропуска.

_moviePlayerViewController = [[MPMoviePlayerViewController alloc] init ]; 
    [_moviePlayerViewController.view setFrame:self.view.frame]; 

    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(moviePlayBackDidFinish:) 
               name:MPMoviePlayerPlaybackDidFinishNotification 
               object:_moviePlayerViewController.moviePlayer]; 
    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(MPMoviePlayerPlaybackStateDidChange:) 
               name:MPMoviePlayerPlaybackStateDidChangeNotification 
               object:nil]; 


    _moviePlayerViewController.moviePlayer.shouldAutoplay = YES; 
    [_moviePlayerViewController.moviePlayer setFullscreen:YES]; 
    _moviePlayerViewController.moviePlayer.repeatMode = MPMovieRepeatModeNone; 
    _moviePlayerViewController.moviePlayer.controlStyle = MPMovieControlStyleNone; 
    _moviePlayerViewController.moviePlayer.scalingMode = MPMovieScalingModeNone; 
    _moviePlayerViewController.moviePlayer.contentURL =[NSURL fileURLWithPath:videoPath]; 

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

in both the case (resume after come foreground, and just now started video) 
the user should see a skip button when the video play time is 10 seconds. 

Может ли одна просьба помочь

+0

Установите таймер, затем нажмите кнопку «SetVisible = True» на 10 секунд или, чтобы показать счетчик, измените отображение каждую секунду, а через 10 секунд «setActive = True» – Robert

ответ

1

чем проблема? Используйте dispatch_after в течение 5 секунд паузы затем внутри отправка блок запуска, один второй таймером для подсчета секунд остальных

EDIT О, я сожалею, что вам нужна только один NSTimer и счетчик секунд Ивар, чтобы отслеживать, сколько секунд, прошедших с видео start

1

Для выбора варианта воспроизведения вы можете использовать [_moviePlayerViewController.moviePlayer pause]; при движении в фоновом режиме и снова возобновить игру с того места, где она была, когда снова выходите на передний план.

В случае, если пользователь закроет приложение, вы также можете указать режим воспроизведения. Вы можете управлять переменной счетчика отдельно, в зависимости от того, сколько секунд воспроизводится видео. Сохраните значение этого счетчика, когда пользователь закроет приложение, вкратце сохраните значение, когда игрок перестает играть. Теперь, когда вы снова вернетесь к этому представлению, вы можете проверить фактическую длину видео и сравнить с продолжительностью, для которой он уже играл и воспроизводить. Это может быть сложно, но упомянутая выше пауза работала.
EDIT: для скрытия и отображения кнопки пропуска после 10 секунд встречное решение идеально.