我在哪里可以获得特定于旋转的appFrame?

时间:2011-04-06 18:18:50

标签: iphone objective-c cocoa-touch ipad orientation

如何检索特定于旋转的applicationFrame / screen界限?无论设备处于横向模式还是纵向模式,“applicationFrame”方法始终在iPad上返回768x1024。我正在寻找一种方法,如果设备处于横向状态,将返回1024x768,如果是纵向,则返回768x1024。

我确信那里有类似的东西,但我找不到它。如果它确实不存在,如何使您的iPad应用程序横向和纵向兼容?

2 个答案:

答案 0 :(得分:0)

[UIDevice currentDevice].orientation

将返回

之一
typedef enum {
    UIDeviceOrientationUnknown,
    UIDeviceOrientationPortrait,
    UIDeviceOrientationPortraitUpsideDown,
    UIDeviceOrientationLandscapeLeft,
    UIDeviceOrientationLandscapeRight,
    UIDeviceOrientationFaceUp,
    UIDeviceOrientationFaceDown
} UIDeviceOrientation;

从那里,您可以推断出当前帧应该是什么。

答案 1 :(得分:0)

原来,applicationFrame工作正常,但只有在自动旋转得到正确实施的情况下!在我的情况下,作为子视图添加到UIWindow的视图的控制器发布得太早,这似乎导致applicationFrame与自动旋转机制一起中断。我认为这是因为响应者链不能正常运行,但我没有验证这一点。