我正在尝试做一些应该非常简单的事情,但是xCode中的界面构建器正在幕后做一些事情,这使得一切都非常不清楚。
基本上我想让我的OpenGL应用程序能够识别方向,根据我的理解,我需要在UIViewController中捕获这些事件。
所以,为了简单起见,假设我刚刚使用标准的MonoTouch OpenGL模板创建了一个新项目,我应该添加什么代码来捕获方向事件?
甚至更好,一个模板,用于启动OpenGl而不使用Interface Builder,因为我是Interface Builder的新手,但它似乎只是妨碍了。
答案 0 :(得分:1)
我不确定这是否是“方向感知”的意思,但您可以通过调用以下代码来访问设备的当前方向:
UIDeviceOrientation curOrientation = [[UIDevice currentDevice] orientation];
这将告诉您设备方向是否为Portrait,LandscapeLeft等。然后,您可以相应地旋转视图/图像,具体取决于您想要实现的目标。
请注意,UIDeviceOrientation指的是物理设备的方向,而UIInterfaceOrientation指的是用户界面的方向,如本SO帖子所述:
您可以通过调用以下函数来更改UI方向:
[[UIDevice currentDevice] setOrientation:someUIInterfaceOrientation];
希望这有帮助,