本文主要介紹masonry的簡單實用,並聯絡如何給控制項新增約束:mas_makeconstraints
。下面就馬上上**來使用。
**說明:- (void)viewdidload ];
// 1.green view:距離redview底部20,距離父控制項右邊100,自身寬高(200,100)
[greenview mas_makeconstraints:^(masconstraintmaker *make) ];
// 1.blue view:頂部等於greenview底部,中點x等於父控制項中點x,自身寬高等於greenview的寬高
[blueview mas_makeconstraints:^(masconstraintmaker *make) ];
}
具體view的約束都已經現在注釋裡了。
對於上述約束來說是很好理解的,比如:(redview頂部約束)
make.top.equalto(self.view).with.offset(20);
意思:我(子控制項)的頂部距離父控制項的頂部相差20
這裡說一下注意點:
1.使用約束之前一定要先將子view新增到父view上。
2.每個子view的約束一定要完整,(除某些控制項外,以後會說到)。
3.新增約束的**也可以放在控制器的- (void)updateviewconstraints方法中,可以看出來該方法是專門用來更新控制項的約束的。
iOS開發之Masonry(三)
本文將介紹masonry另一種設定約束的方法 mas remakeconstraints 意思是重新設定約束。在此之前它會將控制項上的所有約束全部移除,在設定新約束。關鍵 如下 void viewdidload void click 開始執行動畫,設定約束 uiview animatewithdur...
iOS開發之Masonry(五)
cgfloat cellheightwithmodel hxtestmodel model給cell提供乙個這個靜態方法,該方法是通過模型計算cell的高度,在返回cell高度的 方法中呼叫該方法,並傳入模型,如下 cgfloat tableview uitableview tableview he...
iOS開發之Masonry(六)
本文介紹利用masonry約束scrollview上的子控制項,使得scrollview可以在約束的條件下滾動。核心 如下 建立scroll view uiscrollview scrollview uiscrollview alloc init self.view addsubview scrol...