2015-10-20 2 views
4

В чем разница между ориентацией UIDevice и ориентацией UIInterface?В чем разница между ориентацией UIDevice и ориентацией UIInterface?

UIDevice ориентация: -

[[UIDevice currentDevice] orientation] 

UIInterface ориентация: -

[[UIApplication sharedApplication] statusBarOrientation] 
+0

ли вы читать документацию для '' UIDeviceOrientation' и UIInterfaceOrientation'? – rmaddy

+1

проверьте это: http://stackoverflow.com/questions/6838706/iphone-screen-rotation –

ответ

5

Ориентация устройства является ориентацией устройства в настоящее время. Мы можем получить ориентацию устройства с этим вызовом:

[[UIDevice currentDevice] orientation] 

Это будет возвращать одно из следующих состояний: UIDeviceOrientationUnknown UIDeviceOrientationPortrait UIDeviceOrientationPortraitUpsideDown UIDeviceOrientationLandscapeLeft UIDeviceOrientationLandscapeRight UIDeviceOrientationFaceUp UIDeviceOrientationFaceDown

Есть два состояния и лицевой стороной вверх вниз. Один из них будет возвращен, когда устройство лежит на столе. Поэтому, когда это так, мы не знаем, как настроить наш пользовательский интерфейс.

Фокус в том, чтобы получить UIInterfaceOrientation строки состояния. Поскольку мы хотим, чтобы наш графический интерфейс был в той же ориентации, что и строка состояния. Чтобы получить UIInterfaceOrientation от статусных мы используем этот код:

[[UIApplication sharedApplication] statusBarOrientation] 
+1

Это не отвечает на реальный вопрос IMHO, потому что вы не объясняете, что такое UIInterfaceOrientation. –

+0

Также statusbarorientation не является надежным ... – Warpzit

Смежные вопросы