【发布时间】:2012-03-12 10:58:55
【问题描述】:
如果我通过按主页按钮将应用程序置于后台,然后更改设备方向并将应用程序置于前台,我仍然会在 [UIDevice currentDevice].orientation 中获得先前的设备方向值。
例如,我将设备保持在默认方向,将应用程序带到后台并将设备旋转到 UpsideDown 方向,然后将应用程序带到前台,在被查询时 deviceOrientation 仍然是默认值。仅在一段时间后,beginDeviceOrientationEvents 的侦听器才会被调用并且正确的值可用。
所以我想问一下,在应用重新启动时,应该首先在哪里获取 deviceOrientation 的正确值?
【问题讨论】:
-
你试过了吗: - (void)applicationDidEnterBackground:(UIApplication *)application //存储上一个/当前方向 - (void)applicationWillEnterForeground:(UIApplication *)application //获取最后一个方向并使它你目前的方向
-
你误会了问题!当应用程序被带到前台时,我想获得正确的 deviceOrientation 值。当应用程序发送到后台时,我没有获取当前的 deviceOrientation,而是获取了 deviceOrientation。
标签: ios device-orientation uideviceorientation