В iOS 5 и 6 я делал это в методе viewWillAppear в моем контроллере представления:
UIViewController *c = [[UIViewController alloc] init];
//To avoid the warning complaining about the view not being part of the window hierarchy
[[[TWNavigationManager shared] window] addSubview:c.view];
[self presentModalViewController:c animated:NO];
[self dismissModalViewControllerAnimated:NO];
[c.view removeFromSuperview];
Я также добавил этот метод в делегат приложения
- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
return [[TWNavigationManager shared] supportedInterfaceOrientationsForTopViewController];
}
Который в основном перенаправляет этот вызов на контроллер верхнего вида.
Это вызвало вызов методов автоматического поворота для моего контроллера представления, а затем я смог принудительно установить альбомную ориентацию только для этого контроллера представления. Теперь в iOS 7 этот код больше не работает. Белый вид появляется на весь экран.
Каким будет правильный подход в iOS7?
Заранее спасибо.