我想知道如何以编程方式创建具有动态高度的UIButton,具体取决于设备。 假设我创建了这样的按钮:
bigButton = BigButton(frame: CGRect(x: 0, y: 0, width: self.view.frame.width , height: 60))
设置高度时,我需要输入一个整数,但如果显示适用于iPhone 6则需要60px,如果是iPhone 5则需要50px ......依此类推。
我知道怎么做如果我用IB创建按钮,使用约束,我可以使用百分比高度比例,但由于我需要以编程方式创建按钮,我有点坚持。 提前谢谢!
答案 0 :(得分:1)
以下是您可以做的事情的示例:
var dynamicHeight: CGFloat
switch UIDevice().type {
case .iPhone4:
dynamicHeight = 40
case .iPhone5:
dynamicHeight = 50
case .iPhone5S:
dynamicHeight = 50
case .iPhone6:
dynamicHeight = 60
case .iPhone6plus:
dynamicHeight = 70
default:
dynamicHeight = 40
}
bigButton = BigButton(frame: CGRect(x: 0, y: 0, width: self.view.frame.width , height: dynamicHeight))
检索设备类型的方法取自iOS: How to determine iphone model in Swift?。