iOS 7 - 仅在一个视图控制器中限制横向方向

时间:2013-11-04 13:22:23

标签: ios

我只需要在纵向模式下打开第一个视图控制器。由于其余视图控制器将使用两个方向。所以我在plist文件中添加了两个方向。

-(BOOL) shouldAutorotate {
    //Never called
}

- (NSUInteger) supportedInterfaceOrientations {
    //Never called
}

任何人都可以告诉我如何限制

2 个答案:

答案 0 :(得分:11)

通过创建UINavigationController类并重写

来修复它
-(NSUInteger)supportedInterfaceOrientations
{
    AppDelegate *appDelegate = (AppDelegate *) [UIApplication sharedApplication].delegate;
    if(appDelegate.isOrientationOn) {
        return UIInterfaceOrientationMaskAll;
    }
    return UIInterfaceOrientationMaskPortrait;
}

在根窗口中使用此自定义导航控制器类,这就是全部。

答案 1 :(得分:2)

这将锁定View Controller在纵向模式下的方向:

- (BOOL)shouldAutorotate
{
    return NO;
}

- (NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskPortrait;
}