2013-08-23 88 views
0

我試圖在使用約束的Interface Build中獲得特定的佈局,但無法弄清楚我需要的約束。我會嘗試使用圖表來展示我的結果。我有一個帶有背景圖片的標題,然後兩個按鈕放在裏面。在iPhone 5上,我換出了一個更大的標題,這會導致標題增長到正確的大小,但我無法弄清楚我需要在按鈕上放置什麼約束來讓它們擺脫我的偏見旺旺(見iPhone 5圖)特定佈局的Xcode約束

在iPhone 4

------------------------- 
|Button 1    | <- Header 
|Button 2    | 
------------------------- 

在iPhone 5(需要弄清楚的限制讓這種情況發生)

------------------------- 
|Button 1    | 
|      | 
|Button 2    | 
|      | 
|-----------------------| 

我想按鈕2居中在按鈕1底部和標題視圖底部之間的空間中。我還想(儘管不是非常重要)將Button 1稍微從標題頂部向下移開。有人能幫忙嗎?

回答

0

在UIView包裝中換行button2。將按鈕2定位在該包裝的垂直中心。

包裝應該佔用視圖的剩餘空間。將包裝的頂部邊緣附加到button1的底部邊緣。將包裝的底部邊緣附加到超級視圖的底部邊緣。

enter image description here

等瞧:

enter image description here

現在,你只需要改變包裝的的backgroundColor。

要移動按鈕1下來,你必須進入代碼。連接定義按鈕1的頂部邊緣到IBOutlet中,因此您可以約束改變的意見高度的多重約束。

+0

謝謝 - 這個回答了這個問題,但最終我需要它稍有不同(與第二線路按鈕比在下部空間爲中心高的位),所以結束了不必修改約束在包裝視圖碼。我希望你能有超過從界面生成器中的約束更多的控制權,但它並不像它。此外,它不能幫助,當你試圖建立約束和Xcode中不斷改變它們,當你修改不同的看法。猜猜我還需要學習更多的Xcode黑魔法:) –