請閱讀並理解Apple的自動佈局文檔。
現在,如果您刪除所有約束條件,則不禁用自動佈局。
您需要引用代碼中的高度約束,並按建議對其進行修改,然後按照其他答案的建議[view layoutIfNeeded]
進行修改。
如果還沒有高度限制,您還可以在運行時通過addConstraints:
添加一個新的高度限制。
你能否詳細說明你錯過了什麼是你想引用的建議?
編輯: 也請注意,您提到的建議是迅速,沒有的OBJ-C,所以複製粘貼&不會做的伎倆。
編輯2:
在這裏,我們走了,一個字一個字。
@IBOutlet weak var heightConstraint: NSLayoutConstraint!
@IBOutlet
:下面的變量聲明的價值是從界面生成器注入。通過拖放掛鉤。
weak
:Obj-C和Swift中的關鍵字。通過賦值或使用此變量不會增加或管理引用計數。 (參見'retain-cycle'和'memory management')。
var
:這個聲明的值在初始化後可能被重新分配。與let
相反;在Swift中,變量可以被聲明爲不可變的。
heightConstraint
:讀爲 '類型'
NSLayoutConstraint!
:聲明的變量的類型聲明的變量
:
的名稱。在這種情況下,可以隱式解包NSLayoutConstraint
。這大致轉換爲Obj-C型NSLayoutConstraint*
。
現在,
self.heightConstraint.constant = 200
是適合你時,設置上述聲明某處代碼變量不變。在這個例子中爲200
。
不要嘗試調整視圖的大小。這不可能。相反...只嘗試調整約束。 – mohacs