設定背景圖片的 Top 間距條件對象是 Superview,不是 Top Layout Guide !

一般而言,當我們在 Storyboard 設定元件的 Top 間距時,如果它的上方空無一物,Xcode 將貼心地指定 Top 間距對象為 Top Layout Guide,避免元件被 status bar 的文字或 navigation bar 檔到。

雖然我們也很喜歡 Top Layout Guide,可是有些時候,它卻不是我們要的。比方當設定佔滿整個螢幕的背景圖片時。

如下圖所示,即使上下左右的間距都設為 0,背景圖片還是佔不滿整個螢幕,上方遺留高度 20 points 的白色區塊。這一切,都要怪 Top Layout Guide ! 因為此時 Top Layout Guide 為 status bar,我們設定的條件將成為 status bar 的下邊界和圖片的上邊界間距為 0。

想換對象其實不難,比現實世界換男女朋友容易多了。你只要先讓元件的上邊界超過 status bar 的下邊界,聰明的 Xcode 馬上能感應,知道我們想設定的 Top 間距條件對象是 Superview,而不是 Top Layout Guide。

如下圖所示,此時我們設定的 Top 間距條件將變成白色 View 的上邊界和圖片的上邊界間距為 0。

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store