UIDEVICE ориентация - PullRequest
       19

UIDEVICE ориентация

2 голосов
/ 02 июня 2010

Привет всем! У меня есть заставка, которую я хочу показать в альбомной ориентации, а все остальные - в режиме Potrait. Мой корневой контроллер представления действует как заставка, я пишу этот код в методе viewdidload

[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationLandscapeRight]; 

Но этот код не работает и показывает мне, что UIdevice может не отвечать на setorentation. Пожалуйста, дайте мне знать, как я могу изменить orentation только для первого заставки, а также чтобы другой экран был в режиме potrait

Ответы [ 2 ]

8 голосов
/ 02 июня 2010

UIDeviceOrientation относится к физической ориентации устройства, тогда как UIInterfaceOrientation относится к ориентации пользовательского интерфейса.Вы не можете изменить физическую ориентацию устройства, но вы можете изменить отображение строки состояния с помощью [UIApplication sharedApplication].statusBarOrientation

2 голосов
/ 02 июня 2010

Разве вы не можете иметь заставку, которая отображается сбоку?

Пользователь будет интерпретировать это как "ландшафтный" всплеск и соответственно скорректировать, думает ли ваше приложение на самом деле так. Просто убедитесь, что вы вернули NO в shouldAutorotateToInterfaceOrientation:, чтобы он не поворачивался, когда пользователь поворачивает его.

Но предупреждение : вероятно, стоит настроить экран-заставку так, чтобы он находился в портретной ориентации, поскольку может быть раздражающим предположить пользователю, что вашему приложению нравится пейзаж, а затем переключиться на портрет как только оно действительно начнется.

Если вы действительно хотите, однако, вы можете использовать setStatusBarOrientation: animated: на UIApplication для принудительного ориентирования.

...