У меня есть приложение, в котором я хотел бы поддерживать несколько ориентаций. У меня есть два .xib файла, которые я хочу использовать, myViewController.xib и myViewControllerLandscape.xib. myViewController.xib
существует в проекте/Ресурсах и myViewControllerLandscape.xib
существует в корневой директории проекта.
Что я хочу сделать, это использовать отдельный NIB (myViewControllerLandscape.xib)
для моих поворотов. Я пытаюсь обнаружить вращение в viewDidLoad l
ike:
if((self.interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || (self.interfaceOrientation == UIInterfaceOrientationLandscapeRight))
{
NSLog(@"Landscape detected!");
[self initWithNibName:@"myViewControllerLandscape" bundle:nil];
}
Но я вижу в gdb, что это не выполняется, когда приложение запускается с устройства в ландшафте. Сообщение NSLog не запускается. Почему это? Что я сделал неправильно?
Кроме того, если я явно помещаю вызов функции initWithNibName
в метод viewDidLoad
, этот nib не загружен и продолжается с файлом myViewController.xib. Что случилось с моим звонком? Должен ли я указывать пакет?
Спасибо!