0

我使用故事板。在我想旋转的每个视图控制器中,我都包含了这样的方法:

- (BOOL)shouldAutorotateToInterfaceOrientation:
(UIInterfaceOrientation)toInterfaceOrientation {
    return YES;
}

在 iOS 6 中,它可以很好地旋转到我在故事板上的横向和纵向视图。

在 iOS 5 中,父视图控制器会旋转,但模式在屏幕上时不会旋转,它们只会在屏幕上之前旋转,但不会在屏幕上旋转。因此,当用户改变方向时,它保持不变。父级在屏幕上会改变,但模态将采用父级的方向,但在屏幕上不会改变。如何让我的模态视图像 iOS 6 一样在屏幕上旋转时工作。模态视图是通过情节提要创建的。

编辑*

当我对模态进行弹出窗口时,模态不会旋转。我怎样才能解决这个问题?

4

1 回答 1

1

在 iOS5 和 iOS6 中,旋转的处理方式不同。我使用下面的代码来支持这两个版本。

// iOS5
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return YES;
}

// iOS6
- (NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskAll;
}

- (BOOL)shouldAutorotate
{
    return YES;
}

shouldAutorotateToInterfaceOrientation:在 iOS6 中已弃用。你可以在这里阅读: http: //developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/DeprecationAppendix/AppendixADeprecatedAPI.html#//apple_ref/occ/instm/UIViewController/shouldAutorotateToInterfaceOrientation

于 2013-01-18T20:22:37.940 回答