iPhone - 将在第一个视图控制器的视图中显示设备方向

时间:2011-10-04 16:24:02

标签: iphone uidevice

我的应用程序中只有一个应用程序委托和视图控制器。 该应用程序适用于纵向和横向模式。 在我的视图控制器的viewWillAppear方法中,我正在使用以下代码获取设备的方向:

UIInterfaceOrientationIsPortrait([[UIDevice currentDevice] orientation])

第一次运行应用程序时,即使我的设备处于纵向状态,它也会将结果显示为横向。 为什么会如此。我该如何解决这个问题?

3 个答案:

答案 0 :(得分:5)

我遇到了很多关于currentDevice.orientation的问题试试这个:

UIDeviceOrientationIsPortrait([[UIApplication sharedApplication] statusBarOrientation])

答案 1 :(得分:0)

UIDeviceOrientation deviceOrientation = [UIDevice currentDevice].orientation;


if (UIDeviceOrientationIsLandscape(deviceOrientation)
{
   //LandscapeView
}
else
{
   //PortraitView
}

答案 2 :(得分:0)

来自UIDevice的文档:

  

除非为orientation,否则此属性的值始终返回0   通过调用启用了通知   beginGeneratingDeviceOrientationNotifications。

如果您查看'orientation'返回的实际值,您会看到它是'UIDeviceOrientationUnknown'。