如何将某些视图控制器设置为横向和纵向,并且仅限于横向? (IOS)

时间:2016-05-07 06:36:07

标签: ios xcode view landscape portrait

如何将某些视图控制器设置为横向和纵向,并且某些视图仅限于横向?谢谢。

2 个答案:

答案 0 :(得分:2)

步骤1.创建名为CustomNavController的UINavigationcontroller的子类 步骤2.在AppdDelegate中初始化CustomNavController而不是UINavigationController。

步骤3.在CustomNavController

中覆盖UINavigationController的以下方法
-(NSUInteger) supportedInterfaceOrientations
{

    if([NSStringFromClass([[[self viewControllers] lastObject] class]) isEqualToString:@"ViewAsset"]){
        return UIInterfaceOrientationMaskAll;
    }

    return UIInterfaceOrientationMaskPortrait;
}

-(BOOL)shouldAutorotate
{
    return YES;
}

其中ViewAsset是两种模式下所需的类的名称。

更多有趣的教程请查看https://appengineer.in/

答案 1 :(得分:1)

1)从“常规”选项卡的“部署信息”中选择项目中所需的“设备方向”。

2)在您的视图控制器类中,使用以下代码:

- (UIInterfaceOrientationMask) supportedInterfaceOrientations {

    return UIInterfaceOrientationMaskPortrait;

}

3)对于要支持两种方向的视图控制器:

- (UIInterfaceOrientationMask) supportedInterfaceOrientations {

    return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscape;

}