iPhone 方向问题

Posted

技术标签:

【中文标题】iPhone 方向问题【英文标题】:iPhone Orientation Issue 【发布时间】:2012-08-18 04:14:38 【问题描述】:

我刚刚完成的应用程序遇到了最后一个问题。在主菜单屏幕上我只支持 1 个方向,之后的所有屏幕上我都支持通常的 3 个方向。

问题是,假设我在第二个屏幕中并且在我处于横向模式时回击,主菜单屏幕也以横向模式结束,尽管我在那个方法上返回 NO。一旦菜单屏幕处于横向模式,我就不能让它变回原来的方向。按钮看起来乱七八糟,显然很乱。唯一的解决方案是回到第二个屏幕,改变那里的方向,然后回击。当我返回菜单屏幕时,是否有任何代码可以确保方向恢复到默认值?顺便说一句,测试时模拟器和实际设备都有问题。

提前致谢

【问题讨论】:

您需要在 viewWillAppear 中检查(屏幕 1 的)方向并相应地设置框架 也许这个也有帮助***.com/questions/181780/… 您在第一个视图控制器中在哪里实现了定位方法?请发布您的代码 您是否只在主屏幕上“返回 NO”?那是因为您必须为至少一个方向返回 YES。 【参考方案1】:

好的,伙计们,我解决了这个问题,显然完全忽略了该方法。该方法是:

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

如果我:

return NO 

虽然我认为返回 NO 表示它只支持纵向模式,但它不起作用,但我错了

感谢所有评论的人

【讨论】:

希望你是想说return (interfaceOrientation == UIInterfaceOrientationPortrait); 您实际上是正确的,乔恩,我输入的方法有误,但它也可以正常工作。我的主要问题是我不明白返回 No 并不等于我最初认为的纵向模式

以上是关于iPhone 方向问题的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 iDevice (iPad/iPhone) 的方向?

iPhone : 谷歌地图方向

iPhone - 界面方向反转?

在加载 tableview 之前检测 iPhone 方向

iPhone / iPad 通用应用程序方向

关于 iPhone 方向和固件:始终强制方向