Ios8 xCode6如何以编程方式锁定iOS 7.1设备?

Ios8 xCode6如何以编程方式锁定iOS 7.1设备?,ios8,autolayout,xcode6,uistoryboard,size-classes,Ios8,Autolayout,Xcode6,Uistoryboard,Size Classes,我有一个使用故事板、自动布局和大小类的xCode6项目。本项目的部署目标为iOS 7.1。我使用以下尺寸等级: 任意/任意用于iPhone 紧凑的高度/任意宽度,适合景观 我注意到,当部署到iOS 7.1时,该设备会忽略与大小类相关的约束,而只使用“Any/Any”。我不想只为iOS 7.1创建单独的故事板,所以我想在纵向模式下锁定iOS 7.1设备。在我看来,这将需要iOS 7.1的某种条件编译语句,但我不确定该放在哪里 对于iOS 7.1,如何修改我的项目以将所有控制器锁定为纵向模式?对

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

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


对于iOS 7.1,如何修改我的项目以将所有控制器锁定为纵向模式?对于特定的iOS版本,锁定屏幕并不好,但正如您在下面询问的那样,代码将毫无疑问地帮助您。

代码(在appdelegate.m中编写此代码)

演示项目

输出
如果
iOS>iOS7.1
支持所有方向


如果iOS i添加了示例项目和屏幕
- (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;
    }
}