iOS - 自动布局不适用于 3.5" 屏幕

iOS - Autolayout not good for 3.5" screens

我在我的应用程序中添加了自动布局,它非常适合 4"、4.7" 和 5.5" 屏幕。但是,当我在 3.5" (iPhone 4S) 上测试它时,它很乱。许多物体彼此重叠。我能做什么 ?有没有办法在将应用程序上传到 iTunes Connect 时排除 iPhone 4S?如果我的应用程序不适用于 iPhone 4S,它是否会被拒绝,因为它仍然支持 iOS 9? (使用 Xcode 7 GM)

编辑:

我为 3.5 英寸制作了另一个名为 "iPhone35" 的故事板,并将此代码添加到 AppDelegate.swift 中的应用程序功能,但它总是打开 Main.storyboard,它是 4 英寸的及以上屏幕尺寸,即使我选择 iPhone 4S 模拟器。

let theBounds  = UIScreen.mainScreen().bounds
    let heightDevice = theBounds.size.height

    if heightDevice == 480 {
        let wantedStoryboard = UIStoryboard(name: "iPhone35", bundle: nil)
        let vc = wantedStoryboard.instantiateViewControllerWithIdentifier("MainPage")
        let rootViewController = self.window!.rootViewController
        rootViewController?.presentViewController(vc, animated: false, completion: nil)

    } else {
        let wantedStoryboard = UIStoryboard(name: "Main", bundle: nil)
        let vc = wantedStoryboard.instantiateViewControllerWithIdentifier("MainPage")
        let rootViewController = self.window!.rootViewController
        rootViewController?.presentViewController(vc, animated: false, completion: nil)

    }

我该怎么办?

所以我所做的就是将此功能添加到 AppDelegate.swift

func grabStoryBoard() -> UIStoryboard {

    var storyboard: UIStoryboard
    let width = UIScreen.mainScreen().width

    if width == 480.0 {
        storyboard = UIStoryboard(name: "iPhone35", bundle: nil)
    } else {
        storyboard = UIStoryboard(name: "Main", bundle: nil)
    }

    return storyboard

}

然后在 didFinishLaunchingWithOptions 函数中添加这几行

let storyboard: UIStoryboard = self.grabStoryBoard()
  self.window!.rootViewController = storyboard.instantiateInitialViewController() as UIViewController?
  self.window!.makeKeyAndVisible()

而且我还在我的新故事板的第一个控制器上单击了“是初始视图控制器”。

width == 480.0 的原因是因为我的应用设置为 Landscape only。