Ориентация интерфейса с TabBarController

Я использую контроллер панели вкладок в моем приложении. В большей части поведения приложения у нас одна ориентация (interfaceOrientationPortrait). Но у меня есть вид, который запускает видео в WebView. Когда я запускаю это видео, ориентация остается портретной. Я хочу поставить для всех направлений.

Ну, я использовал тип возврата YES в классе моего видео. Ничего не изменилось. Я изменил тип возвращаемого значения на YES в моем классе RootViewController. Ничего не изменилось.

Я хотел бы изменить ориентацию только для видео.

2 ответа

Решение

Контроллеры представления, которые являются частью контроллера панели вкладок, не будут поворачиваться в ориентацию, если любой из контроллеров панели вкладок не может вращаться в эту ориентацию (по крайней мере, если панель вкладок видима). Поэтому, возможно, вы захотите обновить метод всех ваших контроллеров, чтобы вращение происходило, если контроллер веб-представления виден на контроллере панели вкладок.

Если вам нужно более глубокое объяснение, просто спросите. Удачи!

Изменить (пример кода)

Вот что может быть вашими методами вращения контроллеров представления панели вкладок:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    if ((self.tabBarController.selectedIndex == kMyWebViewControllerIndex))
    {
        return YES;
    } else
    {
        return (orientation == UIInterfaceOrientationPortrait);
    }
}

Ваш веб-вид в контроллере представления внутри tabBarController?

Попробуйте показать его в модально представленном контроллере представления, он должен работать

Другие вопросы по тегам