2013-06-22 66 views
5

在我的故事板中,我有一個UIImageView,我想將它放置在半透明導航欄下方的固定距離處。我將視圖控制器的模擬頂欄設置爲半透明欄,現在我已經說明了「Top Super to Superview Equals 52」的約束條件,比欄下8個點。iOS Autolayout - 在半透明導航欄下正確定位視圖

但是,當視圖旋轉到橫向時,導航欄會縮小到34個點,並且圖像視圖仍然是像縱向一樣的52個點。

無論條形有多高,我可以在IB中使用什麼約束將圖像視圖放置在導航欄下方的8個點?

謝謝!

回答

0

在storyBoard中選擇imageView和topBar。在屏幕的右下角,你會看到一個按鈕,看起來像一個H:

enter image description here

選擇它,然後選擇「垂直間距」。設置約8等於8像素,它應該工作。

+0

謝謝。我似乎無法選擇頂部欄,也許是因爲它只是模擬指標?我沒有實際添加導航欄元素到視圖。 – architectpianist

+0

你應該以編程的方式來做,我知道這似乎很痛苦,但是如果你使用VLF並不那麼困難。 – Andrea

+1

這個問題說「在IB」。 – Nestor

2

選擇您的UIImageView並按住Control鍵並拖動到頂層佈局指南以創建約束。如果您不熟悉頂部佈局指南,則可以在左側的結構視圖中選擇它。

0

正如Nestor指出的那樣,您將視圖的頂部邊緣設置爲頂部間距,而不是導航欄的最近鄰居。您應該使用頂部佈局指南設置頂部間距約束,以便使其固定,無論大小等級和方向如何。

要做到這一點,從文檔大綱視圖中按住ctrl單擊並從UIImageView拖動一行到Top Layout Guide並從列表中選擇Vertical Spacing

enter image description here