Кнопка MPMoviePlayerController готово, альбомная ориентация

#ios #mpmovieplayercontroller #landscape

#iOS #MPMoviePlayerController #альбомная

Вопрос:

Я использую простой MPMoviePlayerController. В портретном режиме он встроен в мой макет. Когда я поворачиваю свое устройство, я хочу, чтобы оно отображалось на весь экран. В полноэкранном режиме есть кнопка готово, но единственное, что она делает, это приостанавливает видео. Я хочу отключить контроллер модального представления при нажатии кнопки готово. Как я могу это сделать?

Я пробовал:

  1. Помещаем [UIColor clearColor] на фоне кнопки и помещаем кнопку поверх кнопки Готово, таким образом перехватывая событие касания в мой собственный селектор. Это не удалось, потому что моя пользовательская кнопка не отображается, когда MPMoviePlayerController находится в полноэкранном режиме.

  2. Переход в центр уведомлений и попытка поймать «willExitFullscreen», но этого не произойдет (нажатие кнопки готово в альбомном полноэкранном режиме не выходит из полноэкранного режима).

  3. Поиск кнопки готово в MPMoviePlayerController… но я не смог ее найти.

Использование MPMoviePlayerViewController — это не вариант, так как я хочу иметь возможность использовать встроенный проигрыватель в моем контроллере в портретном режиме и иметь возможность поворачивать фильм, не загружая его с нуля (поэтому нажатие нового контроллера при изменении ориентации устройства пользователем не является правильным решением для меня).).

Я прочитал несколько тем по этой проблеме, и вопрос может быть таким же или похожим, но для anserws требуются либо проверенные мной вещи (например, уведомления), либо вещи, которые я не могу использовать (MPMoviePlayerViewController).

ОТВЕТ (поскольку я не могу опубликовать его через 7 часов) Хех, хорошо..

Виновником всего этого беспорядка была эта строка кода

 [self.mpPlayer setControlStyle:MPMovieControlStyleFullscreen];
  

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

Для меня это не имеет смысла. Но когда я закомментировал эту строку, я могу получить уведомление willExitFullscreen, и я могу с этим работать.

Ответ №1:

Виновником всего этого беспорядка была эта строка кода

 [self.mpPlayer setControlStyle:MPMovieControlStyleFullscreen];
  

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

Для меня это не имеет смысла. Но когда я закомментировал эту строку, я могу получить уведомление willExitFullscreen, и я могу с этим работать.