每个故事板问题调整大小迅速

时间:2015-02-21 17:55:08

标签: xcode swift

我想知道是否有人可以告诉我如何编写此代码,以便自动调整大小以适应不同的屏幕尺寸。我有4个不同屏幕尺寸的故事板,只是想要一种方式来显示代码,如果这个故事板然后(数字改变)遵循这个代码,否则(数字chafe根据故事板大小)这个代码。

我已经尝试通过在每个y和高度轴之后添加每个轴编号(例如/ 568 * size.frame.height)来调整大小,当然,x和宽度相同,但是代码变得太长而且读取起来很复杂。

理想情况下,我想要一个if语句,如果这个屏幕大小,那么它的故事板'这个'然后转到此代码..

pianoButtonsWaterDropFrames = [
            cNote: (CGRect(x: 33 , y: 40 , width: 20, height: 35), CGRect(x: 33, y: 360, width: 20, height: 35)),
            dNote: (CGRect(x: 66 , y: 42 , width: 20, height: 35), CGRect(x: 66, y: 360, width: 20, height: 35)),
            eNote: (CGRect(x: 99 , y: 41 , width: 20, height: 35), CGRect(x: 99 , y: 360, width: 20, height: 35)),
            fNote: (CGRect(x: 132, y: 48, width: 20, height: 35), CGRect(x: 132, y: 360, width: 20, height: 35)),
            gNote: (CGRect(x: 165, y: 39, width: 20, height: 35), CGRect(x: 165, y: 360, width: 20, height: 35)),
            aNote: (CGRect(x: 198, y: 57, width: 20, height: 35), CGRect(x: 198, y: 360, width: 20, height: 35)),
            bNote: (CGRect(x: 231, y: 60, width: 20, height: 35), CGRect(x: 231, y: 360, width: 20, height: 35)),
            cFourNote: (CGRect(x: 263, y: 54, width: 20, height: 35), CGRect(x: 263, y: 360, width: 20, height: 35))
        ]

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

您可以使用HAS answer in this question来检查您的应用运行的iPhone。然后你可以使用switch语句并调用不同的方法:

let modelName = UIDevice.currentDevice().modelName

switch modelName{
    case "iPhone 3G", "iPhone 3GS":
    method1()
    case "iPhone 4", "iPhone 4S":
    method2()
default:
    println("no size found")
}