2016-03-05 91 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會話。

希望這會有所幫助。

相關問題