autoLayout 有兩個核心概念:
約束:就是對控件進行高度,寬度,相對位置的控制
參照:多個控件時,一個或多個控件以其中的一個為基準進行高度,寬度,位置的設置
?
?
當選擇了 use auto layout 的選項之后 左側就會多出兩個東西 :top layout guide 和 bottom layout guide
代表上面和下面的范圍,點擊top layout guide 會發現狀態欄下方會有一條線。添加約束的時候會相對于這條線。
刪除約束的方法:選中一個約束,按delete鍵就可以
?
出現警告的時候可以點上面截圖中按鈕用update frames來修復。
當要進行約束的控件在top layout guide 的下面時會出現第二個參照,如果控件的位置超過了這個參照就不會出現。
添加約束的時候默認是選擇Constrain to margins選項的,這樣當左邊想靠到最邊時,值應該寫成負數,
或者把這個選項去掉,然后填寫數值為0就可以了。
?
?
參照:當想要一個控件想要參照另一個控件的位置和大小做參照的時候,先選中兩個以上的控件,這樣就可以設置
選中的控件的做參照。
?在上面第一幅圖中可以設置選中的幾個控件的對齊方式。第二幅圖中可以設置選中的多個控件的寬高比。
例如,相要設置兩一控件其中一個是另一個的寬度的0.5倍,可以先選中兩個控件設置他們Equal Widths,寬度相等,
然后在約束屬性那里點Edit,或者雙擊這一行,設置Multiplier=0.5
另一個屬性constant是可以設置偏移常量,例如一個按鈕要距離中心點偏上50point,可以先設置它的水平居中,然后
設置constant=50