0
編程方式(因爲Interface Builder是由Satan設計的),如何以同樣的方式將一個視圖對象置於另一個視圖對象之下?以編程方式將視圖對象放置在最近的鄰居下方
如果這是第一個視圖對象:
titleLabel.frame.size.width = view.frame.width - 32
titleLabel.frame.origin.x = CGFloat(16)
titleLabel.frame.origin.y = CGFloat(titleMargin + 32)
我怎麼會第二視圖對象位置正下方呢?我必須創建一個函數來獲取它上面的所有東西的高度,並將其設置爲頂部邊距?看起來很粗糙。
subtitleLabel.frame.size.width = view.frame.width - 32
subtitleLabel.frame.origin.x = CGFloat(16)
subtitleLabel.frame.origin.y = ???
我預計解決方案比例子的設計要複雜得多。
使用視圖之間的關係而不是絕對座標是採用基於約束的佈局的好理由。 –
這就是計劃。 –
不,您可以在代碼中創建約束。請參閱:https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/AutolayoutPG/ProgrammaticallyCreatingConstraints.html –