廢話不多說,直接進入主題.下面有說的不對的地方還請廣大讀者們指正一下,謝謝!!!!?
對于這三個控件之間的約束
控件1的約束:
①控件1的頂部top 距父視圖 頂部 為 64?
② 控件1的左右都是和父視圖對其的
③控件1的高度為30?
只需要這么做就可以搞定
一. 選中需要添加約束的控件1,之后再點擊下方的 Add New Constraints
二. 添加約束?
?約束添加之后,記得點擊最下方的 Add xx Constraints 這樣約束才算添加成功,控件1我們添加了 top 64 left 0 right 0 height 30 這四個約束, ?所以對下方顯示的是 Add 4 constraints
依次將距離top 64 ?lfet 0 right 0添加上去, 需要注意的是 添加成功的對應(yīng)項的下面都會有對應(yīng)的紅線. ?還有一點需要注意的就是: Constrain to margins 這個選項你要是選中的話你最終實現(xiàn)的效果和你設(shè)置的有點誤差.
我們設(shè)置的距l(xiāng)eft 距 right 都為 0 ,但是你要是把這個選項選中, 實際的效果將如圖 Constrain to margins.png所示. 我們可以在左邊紅色區(qū)域內(nèi)看到我們約束的左邊距離也是 0
三. 更新約束
這樣控件1的約束就大功告成了.
控件2 的約束:
①控件2的 top 距控件1 bottom 為 100
② 控件2 的CenterX和父視圖的CenterX 相同
③控件2的高度為30,寬度為 100
注意: ?我們點擊下方的 Add New Constraints添加約束的時候, ? 默認是 相對我們選中的控件最近 的一個控件 進行約束的...我們對控件2添加約束的時候,,,,top 就是相對 控件1 bottom的距離來算的,,,left right 還是相對父視圖來計算的.
這樣控件2的約束就添加完成了. 小伙伴們最后千萬不忘記了點擊最下方的 " Add xx Constraints"?
最后我們在更新一下就??啦
控件3的約束:
①控件3的 top 距控件1 bottom 為 230
② 控件3 的CenterX和控件1 的CenterX 相同
③控件3的width ?height 和控件1 都是相同的.?
對于上面所說的那種直接通過點擊底部的 ?"Add New Constraints" 這個此時是行不通的了..因為通過這種方式添加的約束都是 相對我們選中控件 最近的 一個 控件和 計算的,,, 此時我們?nèi)绻琅f按照上面所說的那種方式添加 top = 230 最終的效果會是這樣的
其實我們在添加約束以后我們就可以看到... top默認的就是相對控件2來算的, 如圖3.png所示:
所以這種方式是不可以的,我們可以采用下面的這種方式來繼續(xù)添加
一. 選中控件3 , 按著 Ctrl建不放 , 這樣就可以拉線了... 我們把線拉到控件1 上,控件1 的顏色變成了藍色, 這就表示選中了,此時就可以松開, 出現(xiàn)的效果如下圖所示,?
如果要是顯示的效果如 圖 "控件3約束1.png" 所示, 可以將線往 控件1 ?的中間位置... 或者兩邊位置 試試... 這個我也木有搞懂到底怎么回事???? 如果有知道的,麻煩指導下.......??????
約束添加完以后, 每個位置前都有一個小點點....效果如下圖所示:
注意:
我們在這里添加約束的時候,top 默認是 控件3 的 top 相對 控件1 的 top? ,我們需要的是 控件3的 top 距控件1 bottom 為 230,,,,所以我們應(yīng)該手動改下就可以了如下圖所示:
這里更改我們需要的對其方式, 以及參數(shù).
最后設(shè)置完約束以后.再update frame 就??啦,最后看下效果圖:
如果鄙人有什么說的不對的地方還請小伙伴們,,,速速提出來!!!!