确定状态栏方向

时间:2012-10-28 17:58:39

标签: ios

我想要检测当前视图中状态栏的位置,以确定要执行的segue。我知道这样做的首选方法是确定设备方向,但这种方法对我来说存在两个问题:

1。)如果设备没有远离垂直或水平方向的角度,则没有检测到设备方向,并且不会发生segue

2.。)在某些条件下,我将“锁定”显示方向,这样即使物理设备方向是横向屏幕,屏幕也会被锁定为肖像,我将要执行我创建的肖像segue

问题是“[UIApplication sharedApplication] .statusBarOrientation =”没有返回状态栏的实际方向。有没有一种简单的方法来检测这个?否则我将不得不写一堆乱码来跟踪这个。

1 个答案:

答案 0 :(得分:1)

您是否尝试过:[[UIDevice currentDevice] orientation]

注意:

根据您应用的设计,可能需要致电[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications]。如果您这样做,请务必在某个时候致电[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications]

如果这不足以达到您的目的,我猜您必须手动检查加速度计。请查看:Handling Motion Events了解有关如何完成的更多信息。