關於cell自動布局約束實現高度自適應問題

2022-09-06 17:00:19 字數 717 閱讀 5426

之前寫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...