指定的方向在iPad上无法正确显示

时间:2015-03-11 14:15:23

标签: ios objective-c iphone ipad

我有一个通用的iOS(7.1+)应用程序,我只想支持大多数视图的纵向方向。我想1个自动旋转视图。

该应用程序是基于导航的应用程序(即基本视图是UINavigationViewController)。在部署信息下的项目编辑器中,我已将纵向,横向左侧和横向右侧检查为支持的方向。

然后我通过在我的基本导航控制器中实施-(BOOL)shouldAutorotate方法和- (NSUInteger)supportedInterfaceOrientations来限制应用的自动旋转。据我了解,这将限制导航控制器显示的任何视图中的方向。

- (BOOL)shouldAutorotate {
    return YES;
}

- (NSUInteger)supportedInterfaceOrientations {
    return UIInterfaceOrientationMaskPortrait;
}

我希望自动旋转我以模态方式呈现的视图。在我以模态方式呈现的视图控制器中,我还设置了-(BOOL)shouldAutorotate- (NSUInteger)supportedInterfaceOrientations

- (BOOL)shouldAutorotate {
    return YES;
}

- (NSUInteger)supportedInterfaceOrientations {
    return UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight | UIInterfaceOrientationMaskPortrait;
}

此解决方案在iPhone上运行良好!一个模态视图按预期旋转,其他视图在内部旋转。但是,使用相同代码的相同视图不会在iPad上旋转。我很困惑为什么它适用于iPhone,而不是iPad。在我看来,因为它是完全相同的视图控制器,它应该在两者上旋转。

0 个答案:

没有答案