我有一个应用程序,它通常是一个纵向应用程序,并且只显示一个 UIViewController 的横向视图。在新的 iOS 6 发布之前它工作正常。
我真的不明白方向在 iOS 6 中是如何工作的。所以我写了一个测试应用程序。这是我所做的:
- 设置应用程序的方向以支持所有方向。
- 我正在使用故事板。rootViewController 嵌入在纵向的 UINavigationController 中。
rootViewController 中的代码:
-(NSUInteger)支持的接口方向
{
返回 UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown;
}
当我单击打开栏按钮时,我将推动另一个应该处于横向模式的 (SecondViewController) 视图控制器:
-(NSUInteger)supportedInterfaceOrientations { 返回 UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight; }
尽管此方法被正确调用,但第二个视图控制器始终也处于纵向模式。
有人可以给我一些建议吗?谢谢