定义允许方向的方法在哪里?
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 故事板覆盖了摘要页面,但我觉得很奇怪。
编辑
这让我很难处理其他所有事情。设备现在可以正确旋转,但有时在横向启动时,它会认为它是纵向的。仍然试图弄清楚这一点。即使当我询问应用程序设备状态栏的方向时,即使它确实是横向的,它也会返回纵向..
【讨论】:
以上是关于定义允许方向的方法在哪里?的主要内容,如果未能解决你的问题,请参考以下文章