Как отключить кнопки «Назад» и «Далее» на MPMoviePlayerController в полноэкранном режиме?

В моем приложении для iPad есть MPMoviePlayerController. Когда есть видео для просмотра, пользователь нажимает на него, а затем может перейти в полноэкранный режим. Однако, если пользователь нажимает кнопку NEXT в полноэкранном режиме, фильм становится пустым, и видео не может быть воспроизведено снова!

В любом случае мне не нужны кнопки «Назад» и «Далее». Как мне избавиться от них или отсортировать это так, чтобы мое приложение не вылетело из строя?

Спасибо!

:-Джо


person jowie    schedule 28.11.2010    source источник


Ответы (3)


Вы можете попробовать установить его controlStyle на MPMovieControlStyleEmbedded - это даст вам элементы управления в стиле встроенного, которые представляют собой всего лишь полосу прокрутки, кнопку воспроизведения / паузы и переключатель полноэкранного режима.

person Noah Witherspoon    schedule 28.11.2010
comment
Если я это сделаю, к сожалению, в полноэкранном режиме у меня все еще будут кнопки по умолчанию, так что у меня все еще есть кнопки назад и вперед :( - person jowie; 28.11.2010
comment
Хм. Затем вам, возможно, придется создать свой собственный набор элементов управления поверх AVPlayerLayer, на котором размещается AVPlayer чтение из AVURLAsset. Другими словами, начните изучать структуру AVFoundation. :) - person Noah Witherspoon; 28.11.2010
comment
Действительно? Значит, проигрыватель фильмов Apple по умолчанию вылетает, если вы попытаетесь пропустить следующий? Разве это не ошибка? - person jowie; 28.11.2010

Только что столкнулся с этим в iOS 7. Кнопки поиска действительно запускают MPMoviePlayerPlaybackStateDidChangeNotification типа MPMoviePlaybackStateStopped. Таким образом, вы можете прислушаться к этому случаю и обработать его соответствующим образом, если хотите сохранить стандартные элементы управления пользовательского интерфейса, не создавая пользовательских.

person Chicowitz    schedule 03.03.2014

Это плохой способ ... Просто выберите все части представления игрока и отключите нужную кнопку по индексу.

[self listSubviewsOfView:playerVC.view andLevel: 0];



- (void)listSubviewsOfView:(UIView *)view andLevel: (NSInteger)level {

    NSArray *subviews = [view subviews];
    if ([subviews count] == 0) return;
    for (UIView *subview in subviews) {
       NSString *str = NSStringFromClass([subview class]);
       if(subview.hidden == NO){
          if([str isEqualToString:@"MPKnockoutButton"] && (level== 15 || level== 17) ){
               subview.hidden = YES;
          }
      }
     [self listSubviewsOfView:subview andLevel:level];
   }
}
person Vitaliy Pitvalo    schedule 24.07.2014