之前寫tableview列表高度動態顯示時都是先計算內容高度,然後在tableview的cell高度**方法裡寫每個cell高度
-(cgfloat)tableview:(uitableview *)tableview heightforrowatindexpath:(nsindexpath *)indexpath
這樣寫比較麻煩,後來發現可以不用計算通過約束自動布局來實現高度的自適應,具體如下:
1.先在cell的類裡給cell加約束,如果是xib直接加,純**可以用masonry加相應約束,如下
- (instancetype)initwithstyle:(uitableviewcellstyle)style reuseidentifier:(nsstring *)reuseidentifier ];}return
self;
}-(void)setmodel:(messagemodel *)model
_contentlab.text =_model.content;
}
2.在viewcontroller裡不用寫cell高度**方法,直接寫如下**即可實現高度自適應
self.tableview.estimatedrowheight = 40;self.tableview.rowheight = uitableviewautomaticdimension;
自動布局下的自定義行高約束問題
昨天晚上被自動布局裡自定義行高磨了一晚上,簡直快要瘋掉。我是利用masonry來進行自動布局的,布局很簡單,就是cell裡面放兩個label,可是,在我新增完約束之後,控制台就會列印一大堆東西,約束是這樣的 titlelab.font uifontsystemfontofsize 28 ttscre...
ios 自動布局約束的問題
目前的自動布局的框架有兩個框架是很好用的乙個就是snapkit 還有個就是masonry,為什麼要使用框架,因為蘋果自帶的框架我們使用起來 寫的太多了。所以我們可以使用第三方框架來編寫。其中這裡補充一點就是我們如果已經給乙個控制項新增過約束,我們還想去修改的話,我們只需要通過下面這個 進行判斷,滿足...
ios 自動布局新增刪除約束
目錄 約束方法 刪除約束 布局示例 第一種 constraintwithitem 第二種 vfl 第三種 masonry 問題記錄 nslayoutconstraint constraint nslayoutconstraint constraintwithitem playbtn 要新增約束的vi...