проблема с presentModalViewController - PullRequest
5 голосов
/ 14 мая 2010

Если мой iPad находится в ландшафтном режиме и вызывается presentModalViewController, представление автоматически переключается в портретный режим. Любые решения?

UIViewController * start = [[UIViewController alloc]initWithNibName:@"SecondView" bundle:nil];
start.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
start.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentModalViewController:start animated:YES];

В SecondView я уже добавил:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return YES;
}

Ответы [ 3 ]

2 голосов
/ 07 сентября 2011

Проблема в том, что ваш пример кода создает UIViewController вместо вашего фактического производного класса. Другими словами, вместо этого вы должны создать свой контроллер следующим образом:

SecondViewController *start = [[SecondViewController alloc]initWithNibName:@"SecondView" bundle:nil];

Я предполагаю, что ваш класс контроллера представления называется "SecondViewController", потому что вы загружали перо с похожим именем.

Если вы не предоставите правильный экземпляр, ваши методы делегата не смогут быть вызваны.

1 голос
/ 20 мая 2011

ваш запуск UIViewController должен быть переопределен, чтобы он отображался в правильной ориентации.

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations.
    return YES;//UIInterfaceOrientationIsLandscape(interfaceOrientation);
}

Я получил этот проблам только сейчас. И я решаю это таким образом. Надеюсь, вам это тоже поможет.

0 голосов
/ 02 ноября 2010

Должно быть что-то еще, потому что определение в IB тоже не работает для меня. Оригинальный OP использует splitViewController?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...