将纵向视图控制器推到横向视图控制器上?
Posted
技术标签:
【中文标题】将纵向视图控制器推到横向视图控制器上?【英文标题】:Pushing portrait view controller onto landscape view controller? 【发布时间】:2012-10-01 16:18:50 【问题描述】:我正在尝试将仅纵向视图控制器推送到允许纵向或横向的控制器上。我遇到的问题是,如果用户处于横向模式并且我将新控制器推到它上面,它将保持横向模式并且看起来一切都搞砸了。当新的视图控制器被推上时,如何强制将方向更改为纵向?
【问题讨论】:
【参考方案1】:KDaker 的回答是正确的,但您可以考虑的另一个选择是,当您的方向不是您想要的时,您是否可以限制导航。这不一定是一个好主意,但在某些情况下它可以很好地工作。例如,如果您有一个视频,当旋转到横向时变成全屏并覆盖您的导航返回按钮,直到它返回到纵向。
【讨论】:
【参考方案2】:在 ios 5 和任何你不能“强制”从一个视图到另一个视图的方向之前。您可以仅支持项目的一种方向,但随后允许自动旋转。因此,在您的情况下,您只能允许自动旋转并等待用户旋转设备。
在 iOS 6 中,他们改变了方向处理的工作方式,变得更加灵活。你现在有这些方法:
- (NSUInteger)supportedInterfaceOrientations
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
使用这些,您可以以您喜欢的任何方向显示您的视图控制器,前提是前一种方法支持它。
希望这会有所帮助。
【讨论】:
以上是关于将纵向视图控制器推到横向视图控制器上?的主要内容,如果未能解决你的问题,请参考以下文章