//不要將autoresizingmask轉為autolayout的約束
blueview.translatesautoresizingmaskintoconstraints = no;
uiview *redview = [[uiview alloc] init];
[self.view addsubview:redview];
redview.backgroundcolor = [uicolor redcolor];
//不要將autoresizingmask轉為autolayout的約束
redview.translatesautoresizingmaskintoconstraints = no;
/**************blueview的約束**************/
//新增高度約束:40
nslayoutconstraint *heightconstraint = [nslayoutconstraint constraintwithitem:blueview attribute:nslayoutattributeheight relatedby:nslayoutrelationequal toitem:nil attribute:nslayoutattributenotanattribute multiplier:0.0 constant:40];
[blueview addconstraint:heightconstraint];
//新增左邊約束:blueview的左邊距離父控制項右邊有20的間距
nslayoutconstraint *leftconstraint = [nslayoutconstraint constraintwithitem:blueview attribute:nslayoutattributeleft relatedby:nslayoutrelationequal toitem:blueview.superview attribute:nslayoutattributeleft multiplier:1.0 constant:20];
[blueview.superview addconstraint:leftconstraint];
//新增右邊約束:blueview的右邊距離父控制項右邊有20的間距
nslayoutconstraint *rightconstraint = [nslayoutconstraint constraintwithitem:blueview attribute:nslayoutattributeright relatedby:nslayoutrelationequal toitem:blueview.superview attribute:nslayoutattributeright multiplier:1.0 constant:-20];
[blueview.superview addconstraint:rightconstraint];
//新增頂部約束:blueview的頂部距離父控制項的頂部有20的間距
nslayoutconstraint *topconstraint = [nslayoutconstraint constraintwithitem:blueview attribute:nslayoutattributetop relatedby:nslayoutrelationequal toitem:blueview.superview attribute:nslayoutattributetop multiplier:1.0 constant:20];
[blueview.superview addconstraint:topconstraint];
/**************redview的約束**************/
//新增高度約束:跟blueview一致
nslayoutconstraint *heightconstraint2 = [nslayoutconstraint constraintwithitem:redview attribute:nslayoutattributeheight relatedby:nslayoutrelationequal toitem:blueview attribute:nslayoutattributeheight multiplier:1.0 constant:0];
[self.view addconstraint:heightconstraint2];
//新增左邊約束:redview左邊 == 父控制項的中心x
nslayoutconstraint *leftconstraint2 = [nslayoutconstraint constraintwithitem:redview attribute:nslayoutattributeleft relatedby:nslayoutrelationequal toitem:self.view attribute:nslayoutattributecenterx multiplier:1.0 constant:0];
[self.view addconstraint:leftconstraint2];
//新增頂部約束:redview的頂部距離blueview有20的間距
nslayoutconstraint *topconstraint2 = [nslayoutconstraint constraintwithitem:redview attribute:nslayoutattributetop relatedby:nslayoutrelationequal toitem:blueview attribute:nslayoutattributebottom multiplier:1.0 constant:20];
[blueview.superview addconstraint:topconstraint2];
//新增右邊約束:redview的右邊 == blueview的右邊
nslayoutconstraint *rightconstraint2 = [nslayoutconstraint constraintwithitem:redview attribute:nslayoutattributeright relatedby:nslayoutrelationequal toitem:blueview attribute:nslayoutattributeright multiplier:1.0 constant:0];
[self.view addconstraint:rightconstraint2];
自動布局 Autolayout
簡介 在以前的ios程式中,是如何設定布局ui介面的?經常編寫大量的座標計算 為了保證在3.5 inch和4.0 inch螢幕上都能有完美的ui介面效果,有時還需要分別為2種螢幕編寫不同的座標計算 即傳說中的 螢幕適配 什麼是autolayout?autolayout是一種 自動布局 技術,專門用來...
AutoLayout自動布局
autolayout 自動布局 入門 這是博主的wwdc2012筆記系列中的一篇,完整的筆記列表可以參看這裡。如果您是首次來到本站,也許您會有興趣通過rss,或者通過頁面左側的郵件訂閱的方式訂閱本站。autolayout是一種基於約束的,描述性的布局系統。auto layout is a const...
iOS 自動布局Autolayout
自動布局 autolayout 簡介 在以前的ios程式中,是如何設定布局ui介面的?經常編寫大量的座標計算 為了保證在3.5 inch和4.0 inch螢幕上都能有完美的ui介面效果,有時還需要分別為2種螢幕編寫不同的座標計算 即傳說中的 螢幕適配 什麼是autolayout?autolayout...