Форсировать альбомную ориентацию на iOS 6 в Objective-C
У меня есть главный контроллер представления, который находится внутри UINavigationController. В этом главном контроллере вида у меня есть кнопка, которая выдвигает контроллер детального вида, в котором есть UIWebView. Я хочу, чтобы этот контроллер детального просмотра находился в ландшафтном режиме при загрузке. Возвращаясь к основному контроллеру просмотра, он снова принудительно возвращается в портретный режим. Я использую iOS 6 на этом.
Я видел другие подобные вопросы, но это не работает с моей стороны. Я создал LandscapeViewController, который является подклассом UIViewController, где я написал эти методы:
#pragma mark - Orientation Methods
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskLandscape;
}
- (BOOL)shouldAutorotate
{
return YES;
}
Это мой код, когда я нажимаю на детальный контроллер:
DetailViewController *detailVC = [[DetailViewController alloc]
initWithNibName:@"DetailViewController"
bundle:nil];
[self.navigationController pushViewController:detailVC
animated:YES];
Я думаю о том, где создать подкласс моего LandscapeViewController в приведенном выше коде, чтобы он работал, или о том, как правильно создать подкласс и выдвинуть мой контроллер детального просмотра. Я также могу представить свой контроллер детального просмотра модально, если навигационный контроллер не может переместить мой контроллер детального просмотра из портретного в ландшафтный режим. Где я делаю это неправильно?