iOS使用加速度计获取初始设备方向

时间:2015-03-09 18:19:21

标签: ios iphone ipad opengl-es

我正在使用OpenGL ES游戏,c ++和iOS。我希望画布轴始终处于默认的portait方向,并且还能够知道哪个是初始设备方向和所有方向更改。

我遇到的问题是,如果我将XCode项目配置为支持4个方向:2个Portraits和2个Landscape,那么嵌入OpenGL画布的Frame的轴将取决于初始方向。如果我将项目配置为仅支持纵向方向,那么应用程序将不会告诉我它是否在横向中。

我想找到一种尽可能以编程方式执行此操作的方法。

1 个答案:

答案 0 :(得分:0)

1)在iOS中以编程方式了解

        UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];
if(orientation == UIDeviceOrientationLandscapeLeft)
    landscapeRight = false;
else if(orientation == UIDeviceOrientationLandscapeRight)
else if(orientation == UIDeviceOrientationPortraitUpsideDown)
else if(orientation == UIDeviceOrientationPortrait)
....

2)对于默认纵向视图

限制Xcode项目的其他方向的info.plist