【问题标题】:xCode6 How to lock iOS 7.1 devices in portrait programmatically?xCode6 如何以编程方式锁定 iOS 7.1 设备的纵向?
【发布时间】:2015-01-23 16:30:41
【问题描述】:

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

  • 纵向 iPhone 的任意/任意
  • 高度紧凑/横向任意宽度

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

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

【问题讨论】:

  • 我添加了示例项目和屏幕

标签: ios8 autolayout xcode6 uistoryboard size-classes


【解决方案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;
    }
}

演示项目
Link

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

如果iOS <= iOS7.1只支持纵向

【讨论】:

    猜你喜欢
    • 2015-07-02
    • 1970-01-01
    • 1970-01-01
    • 2011-05-31
    • 1970-01-01
    • 1970-01-01
    • 2011-12-19
    • 1970-01-01
    相关资源
    最近更新 更多