У меня есть вопрос об ориентации iOS 6. Вот мой файл https://www.dropbox.com/s/f8q9tghdutge2nu/Orientations_iOS6.zip
В этом примере кода я хочу, чтобы MasterViewController
имел только портретную ориентацию, а DetailViewController
имел книжную ориентацию, альбомную ориентацию.
Я знаю, что ориентация iOS 6 контролируется самым верхним контроллером.
Поэтому я настраиваю UINavigationController(CustomNavigationController)
, устанавливаю supportInterfaceOrientations и shouldAutorotate в этом классе.
-(NSUInteger)supportedInterfaceOrientations{
if([[self topViewController] isKindOfClass:[DetailViewController class]]){
return UIInterfaceOrientationMaskAllButUpsideDown;
}else{
return UIInterfaceOrientationMaskPortrait;
}
}
-(BOOL)shouldAutorotate
{
return YES;
}
Все в порядке, за исключением того, что когда DetailViewController
в альбомной ориентации нажмите кнопку «Назад», MasterViewController
отобразится альбомная ориентация.
Могу ли я разрешить MasterViewController
всегда показывать портретную ориентацию, а DetailViewController
может иметь много ориентаций?
Спасибо!