定义允许方向的方法在哪里?

Posted

技术标签:

【中文标题】定义允许方向的方法在哪里?【英文标题】:Where are the methods that defines allowed orientations? 【发布时间】:2013-01-09 13:04:51 【问题描述】:

我一直在开发我的应用程序,它在 appStore 中也有一段时间了,但我现在想添加对横向方向的支持。我以为我刚刚取消选中目标摘要页面中的方向图标以仅启用纵向,但是当我现在检查它们时,什么也没有发生!已经添加了很多存储,但我找不到任何应该禁用景观的方法。那会是什么方法?我也没有在 appDelegate 中找到任何东西..我什至不知道从哪里开始寻找..在 xcode 中打开一个空项目时,它们的方向很好,根本没有任何方法..

在故事板中,当单击视图并转到检查器时,它会显示 Orientation:Inferred。所以问题不在这里。 我使用 tabBar,并且 viewControllers 中的所有视图都设置为 Autoresize subviews,因为类似的问题得到了回答。

编辑

使用目标属性摘要中的按钮为 iPhone 启用横向时,允许 iPhone 横向,但在为 iPad 启用时,没有任何变化..

【问题讨论】:

***.com/a/12651309/1059705 这个链接可以帮助你在 ios 6 中 【参考方案1】:

shouldAutorotate 在 iOS6 中,shouldAutorotateToInterfaceOrientation 在以前的版本中。 请注意,方向主要由 ViewController 定义。

【讨论】:

是的,我将这个方法添加到我的一个视图中,它被调用了,但是除了我放在那里的 NSLog 之外什么也没有发生。我也试过willAnimateRotationToInterfaceOrientation,它没有被调用。 supportedInterfaceOrientations ? 在目标的Summary-page中,它们都被检查了,我还在plist中检查了它们都被正确添加。我想这意味着同样的事情,但我仍然找不到它说它不应该面向横向的位置。不,我没有将我的设备锁定在一张肖像上。 不,如果这是一种方法,它既不会在 viewController 也不会在应用程序委托中使用。 -(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation【参考方案2】:

您可以在 info.plist 中添加或删除支持的方向

【讨论】:

是的,正如我在对 Larme 的评论中所说,我已经验证了 plist .. 遗憾的是它们不是问题..【参考方案3】:

我通过为 UITabBarController 创建一个类并将 shouldAutorotate... 设置为 YES 解决了这个问题。虽然我的 iPad 故事板覆盖了摘要页面,但我觉得很奇怪。

编辑

这让我很难处理其他所有事情。设备现在可以正确旋转,但有时在横向启动时,它会认为它是纵向的。仍然试图弄清楚这一点。即使当我询问应用程序设备状态栏的方向时,即使它确实是横向的,它也会返回纵向..

【讨论】:

以上是关于定义允许方向的方法在哪里?的主要内容,如果未能解决你的问题,请参考以下文章

反射通俗易懂,反射体现在哪里

如何在AWS中定义仅允许使用预定义模板创建堆栈的策略/角色/权限

一种定义父子节点关系的方法

ruby 顶层定义的方法在哪里?

ruby 内省:如何问ruby 方法定义在哪里? [复制]

如何允许iOS用户设置应用程序的方向