在你的問題,請您談談恰恰多少分每個按鈕均是,但你沒有說明你是如何想它表現爲當設備不夠高時(例如在iPhone 4上)。
除了標準的領先/尾隨/頂部/底部約束之外,我可能會建議您考慮定義各種標籤/按鈕相對於彼此的高度。例如,請考慮以下限制:
NSLayoutConstraint.activateConstraints([
// leading constraints
pinkLabel.leadingAnchor.constraintEqualToAnchor(view.leadingAnchor, constant: 8),
button1.leadingAnchor.constraintEqualToAnchor(view.leadingAnchor, constant: 8),
button2.leadingAnchor.constraintEqualToAnchor(view.leadingAnchor, constant: 8),
button3.leadingAnchor.constraintEqualToAnchor(view.leadingAnchor, constant: 8),
button4.leadingAnchor.constraintEqualToAnchor(view.leadingAnchor, constant: 8),
// trailing constraints
view.trailingAnchor.constraintEqualToAnchor(pinkLabel.trailingAnchor, constant: 8),
view.trailingAnchor.constraintEqualToAnchor(button1.trailingAnchor, constant: 8),
view.trailingAnchor.constraintEqualToAnchor(button2.trailingAnchor, constant: 8),
view.trailingAnchor.constraintEqualToAnchor(button3.trailingAnchor, constant: 8),
view.trailingAnchor.constraintEqualToAnchor(button4.trailingAnchor, constant: 8),
// vertical spacing constraints
pinkLabel.topAnchor.constraintEqualToAnchor(view.topAnchor, constant: 20),
button1.topAnchor.constraintEqualToAnchor(pinkLabel.bottomAnchor, constant: 8),
button2.topAnchor.constraintEqualToAnchor(button1.bottomAnchor, constant: 8),
button3.topAnchor.constraintEqualToAnchor(button2.bottomAnchor, constant: 8),
button4.topAnchor.constraintEqualToAnchor(button3.bottomAnchor, constant: 8),
view.bottomAnchor.constraintEqualToAnchor(button4.bottomAnchor, constant: 83),
// now set relative height
pinkLabel.heightAnchor.constraintEqualToAnchor(button1.heightAnchor, multiplier: 1.5),
button2.heightAnchor.constraintEqualToAnchor(button1.heightAnchor),
button3.heightAnchor.constraintEqualToAnchor(button1.heightAnchor),
button4.heightAnchor.constraintEqualToAnchor(button1.heightAnchor)
])
(順便說一句,我編程方式顯示這些,因爲它明確地闡明所有約束的最簡單的方法,但你可以在IB設置這些或在目標實現。-C,也實現它反正你想要的,但這些例子的限制)
,這將導致在三個不同的設備:
很明顯,你可以改變茨艾倫對任何你想要的東西都有限制,但是這說明了一種方法。底線,只需添加標準的前導/尾隨/頂部/底部約束,然後定義各種標籤/按鈕相對於彼此的高度。
在你的問題,你告訴我們,你做了什麼不希望它看起來像較小的屏幕上,但從來沒有闡明什麼應該樣子。如果你澄清你希望它出現在不同大小的屏幕上,那麼我們可以進一步幫助。
標籤本身是否有明確的高度限制? –
除非需要,否則不要給出元素的高度/寬度限制。始終給出頂部,底部,前導,尾部並讓自動佈局決定該特定元素的寬度和高度。 –
是的,它的134點。我通過控制拖動顯示彈出式菜單的標籤來設置它 – sharp