限制ceritain尺寸等级的方向

时间:2016-06-07 07:09:04

标签: ios swift interface-builder size-classes

我试图将常规宽度,紧凑高度,紧凑型,紧凑高度(即iPhone横向模式)的方向限制为纵向。

我想知道的主要问题是,这是否可以通过界面构建​​器或者它是一个我必须在viewController生命周期中捕获代码的事件,禁用肖像一起不是一个选项,因为我希望该应用程序支持多任务处理

youtube应用程序就是一个很好的例子,他们将iphone的方向限制为肖像,但支持iPad和多任务处理。

2 个答案:

答案 0 :(得分:0)

查看项目设置 - >一般

您将看到可以指定每台设备支持的方向

Orientation per device

或者,以编程方式为通用应用程序执行此操作:

- (UIInterfaceOrientationMask)supportedInterfaceOrientations {

    if([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
        return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscape;
    } else {
        return UIInterfaceOrientationMaskPortrait;
    }
}

答案 1 :(得分:0)

想出来,对于那些不知道的人:

  1. 在您的顶级项目文件中,将设备设置为通用,选择所有方向。

  2. 转到您的info.plist文件并找到:支持的界面方向(您将看到其中两个,选择旁边没有iPad的那个)

  3. 禁用任何您不想支持iPhone的方向。

  4. 我假设只要您支持iPhone的纵向模式,您就不会与多任务设置冲突,因为您支持所有必要的尺寸类别。