0

我有一个使用故事板、自动布局和大小类的 xCode6 项目。本项目的部署目标是 iOS 7.1 。我正在使用以下尺寸等级:

  • 适用于纵向 iPhone 的 Any/Any
  • 紧凑的高度/横向的任何宽度

我注意到,当部署到 iOS 7.1 时,设备会忽略与大小类相关的约束,而仅使用“Any/Any”。我不想只为 iOS 7.1 创建单独的故事板,所以我想将 iOS 7.1 设备锁定为纵向模式。在我看来,这将需要某种适用于 iOS 7.1 的条件编译语句,但我不确定该放在哪里。

如何修改我的项目以在 iOS 7.1 的纵向模式下锁定所有控制器?

4

1 回答 1

1

锁定特定 iOS 版本的屏幕并不好,但正如您在下面询问的那样,代码将毫无疑问地帮助您。

代码(write this code in appdelegate.m)

- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
    // Support all orientation
    if(floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_7_1)
    {
        return UIInterfaceOrientationMaskAll;
    }
    // Support only portrait
    else
    {
        return UIInterfaceOrientationMaskPortrait;
    }
}

演示项目
链接

输出
如果iOS > iOS7.1支持所有方向
在此处输入图像描述

如果iOS <= iOS7.1只支持纵向
在此处输入图像描述

于 2014-12-05T10:15:35.193 回答