2016-03-05 112 views
0

我正在用一个按钮测试示例项目。我写这个,但它不能改变按钮的高度。
有什么问题?设置框架时为什么不能更改按钮高度?

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

使用自动布局? – Wain

回答

2

把你的代码中

viewDidLayoutSubviews 

调用超之后。理论上,您需要等待自动布局引擎完成之后才能修改帧,否则将为您设置。在这种情况下,这可能是因为didLoad自动布局可能还没有完成。

而不是设置框架,设置按钮的约束。这样你可以完全控制。特别是当你与你的按钮布局其他控件。让你的生活更轻松。大多。

供您参考,请查看关于自动布局和自适应UI的wwdc会话。

希望这会有所帮助。

相关问题