#ios #mpmovieplayercontroller #landscape
#iOS #MPMoviePlayerController #альбомная
Вопрос:
Я использую простой MPMoviePlayerController. В портретном режиме он встроен в мой макет. Когда я поворачиваю свое устройство, я хочу, чтобы оно отображалось на весь экран. В полноэкранном режиме есть кнопка готово, но единственное, что она делает, это приостанавливает видео. Я хочу отключить контроллер модального представления при нажатии кнопки готово. Как я могу это сделать?
Я пробовал:
-
Помещаем [UIColor clearColor] на фоне кнопки и помещаем кнопку поверх кнопки Готово, таким образом перехватывая событие касания в мой собственный селектор. Это не удалось, потому что моя пользовательская кнопка не отображается, когда MPMoviePlayerController находится в полноэкранном режиме.
-
Переход в центр уведомлений и попытка поймать «willExitFullscreen», но этого не произойдет (нажатие кнопки готово в альбомном полноэкранном режиме не выходит из полноэкранного режима).
-
Поиск кнопки готово в MPMoviePlayerController… но я не смог ее найти.
Использование MPMoviePlayerViewController — это не вариант, так как я хочу иметь возможность использовать встроенный проигрыватель в моем контроллере в портретном режиме и иметь возможность поворачивать фильм, не загружая его с нуля (поэтому нажатие нового контроллера при изменении ориентации устройства пользователем не является правильным решением для меня).).
Я прочитал несколько тем по этой проблеме, и вопрос может быть таким же или похожим, но для anserws требуются либо проверенные мной вещи (например, уведомления), либо вещи, которые я не могу использовать (MPMoviePlayerViewController).
ОТВЕТ (поскольку я не могу опубликовать его через 7 часов) Хех, хорошо..
Виновником всего этого беспорядка была эта строка кода
[self.mpPlayer setControlStyle:MPMovieControlStyleFullscreen];
Таким образом, кажется, что установка полноэкранного стиля управления при переходе в полноэкранный режим приведет к отключению кнопки готово….
Для меня это не имеет смысла. Но когда я закомментировал эту строку, я могу получить уведомление willExitFullscreen, и я могу с этим работать.
Ответ №1:
Виновником всего этого беспорядка была эта строка кода
[self.mpPlayer setControlStyle:MPMovieControlStyleFullscreen];
Таким образом, кажется, что установка полноэкранного стиля управления при переходе в полноэкранный режим приведет к отключению кнопки готово….
Для меня это не имеет смысла. Но когда я закомментировал эту строку, я могу получить уведомление willExitFullscreen, и я могу с этим работать.