iOS: универсальное приложение не вращается, никогда не вызывает willRotateToInterfaceOrientation - PullRequest
0 голосов
/ 06 февраля 2011

Приложение My (Universal iPhone / iPad) не будет вращаться. Во всех моих viewcontrollers я возвращаю "YES" методу mustRotate, но методы моего viewcontrollers willRotateToInterfaceOrientation никогда не вызывают.

Это общая проблема?

Ответы [ 3 ]

3 голосов
/ 25 мая 2011

В этом универсальном приложении вы используете splitViewController?Если это так, убедитесь, что все ваши viewControllers возвращают «Да» в случае автоматического поворота.

Я передал массив viewControllers (на самом деле NavigationViewControllers) в splitViewController, и мое представление не вращалось.Это было потому, что мой левый viewController не реализовывал shouldAutorotate.Я думаю, это связано с тем, что вращение на iPad при использовании splitViewController отличается от вращения на iPhone.При повороте он показывает два viewControllers.Думаю, оба должны поддерживать ландшафтный режим?

Если вы не хотите, чтобы вращение одного viewController вращалось, сделайте условную проверку, чтобы увидеть, находитесь ли вы на iPad в методе shouldAutoRotate.

2 голосов
/ 07 февраля 2011

Вы используете панель вкладок? Вам нужно будет создать подкласс вашего контроллера панели вкладок и вернуть yes для поворота.

0 голосов
/ 20 июля 2012

Я только что столкнулся с этим. Решение состояло в том, чтобы создать подкласс UISplitViewController и добавить

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

Несмотря на то, что отдельные контроллеры представления уже возвращали YES, это не работало, пока я не добавил подкласс контроллера разделенного представления.

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