Вопрос

У меня есть контроллер вида, который был добавлен в UITabBarController. Анкет В контроллере этого представления у меня есть кнопка, которая открывает фильм, используя MPMoviePlayerViewController.

Когда я играю в фильм, верхняя навигационная панель все еще накладывается на вершину фильма, эффективно блокируя часть экрана.

Когда этот контроллер представления не внутри UITabBarController, Однако фильм играет нормально.

Кто-нибудь знает, что происходит?

Это было полезно?

Решение

Догадаться. Я думаю, что все становится шатким, потому что MPMoviePlayerViewController имеет метод, добавленный в качестве категории к UIViewController называется presentMoviePlayerViewControllerAnimated:. Отказ Обычно вы называете это так в своем UIViewController:

[self presentMoviePlayerViewControllerAnimated:mp];

Но в этом случае, если вы добавили контроллер представления в UITabBarController куча, self Ваш контроллер представления в контроллере стержня, и я думаю, что это делает все возможное. Исправление - вызов presentMoviePlayerViewControllerAnimated: с контроллером родительского представления, который, в моем случае, был другим UIViewController Это было жилье UITabBarController. Отказ Я просто ссылался на родительский представление и добавил его в контроллер моего представления init метод, затем назвал что -то вроде [parentController presentMoviePlayerViewControllerAnimated:mp].

Как Надеюсь, это кому -то поможет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top