UIDevice方向与UIInterface方向有什么区别?
UIDevice方向: -
[[UIDevice currentDevice] orientation]
UIInterface方向: -
[[UIApplication sharedApplication] statusBarOrientation]
答案 0 :(得分:4)
设备方向是设备当前的方向。我们可以通过此调用获取设备方向:
[[UIDevice currentDevice] orientation]
这将返回以下状态之一:UIDeviceOrientationUnknown UIDeviceOrientationPortrait UIDeviceOrientationPortraitUpsideDown UIDeviceOrientationLandscapeLeft UIDeviceOrientationLandscapeRight UIDeviceOrientationFaceUp UIDeviceOrientationFaceDown
FaceUp和FaceDown有两种状态。当设备平放在桌子上时,将返回其中一个。所以在这种情况下,我们不知道如何布局我们的UI。
诀窍是获取状态栏的UIInterfaceOrientation。因为我们希望GUI与状态栏处于相同的方向。要从状态栏获取UIInterfaceOrientation,我们使用以下代码:
[[UIApplication sharedApplication] statusBarOrientation]