我正在使用按钮测试示例项目。我写这个,但它不能改变按钮的高度 怎么了?
class ViewController: UIViewController {
@IBOutlet var test: UIButton!
override func loadView() {
super.loadView()
var newFrame = test.frame
newFrame.size = CGSizeMake(newFrame.width, newFrame.height * 10)
test.frame = newFrame
}
}
并获得我设定的相同高度。
答案 0 :(得分:2)
将您的代码放入
viewDidLayoutSubviews
打电话给超级。从理论上讲,您需要在修改框架之前等待自动布局引擎完成,否则将为您设置。在这种情况下,这可能就像在didLoad上发生的那样,autolayout可能还没有完成。
不设置框架,而是设置按钮的约束。这样你就可以完全控制。特别是当您将其他控件与按钮一起布局时。让您的生活更轻松。大多。
供您参考,查看有关自动布局和自适应ui的wwdc会话。
希望这会有所帮助。