TableViewCell自适应高度三种实现方式

2020-04-03  本文已影响0人  Enjoyhy

实现cell的自适应布局的前提是要让cell中的子空间的布局要使用autolayout,这篇文章我们会通过Masonry、SDAutoLayout、xib三种方式实现布局的autolayout,再通过Y轴方向的完全约束来实现cell高度自适应。
1.Masonry实现cell自适应:
(1)首先通过Masonry实现cell的布局

pragma mark -Setter

pragma mark -Setter

(2)通过预设tableview的高度estimatedRowHeight属性以及tableView的rowHeight设置UITableViewAutomaticDimension来实现高度自适应

核心代码:self.rowHeight = UITableViewAutomaticDimension;
self.estimatedHeight = 44.0f(随便预设高度)

(3)效果如下:


IMG_0158.JPG

2.SDAutoLayout实现cell的自适应

}
//只自适应文本内容

pragma mark -Setter

pragma mark -Setter

核心代码:[self setupAutoHeightWithBottomView:self.contentLabel bottomMargin:15];
[tableView cellHeightForIndexPath:indexPath model:self.contentArray[indexPath.section] keyPath:@"viewModel" cellClass:[SGITestAutoTableViewCell class] contentViewWidth:SGIScreenWidth] ;

(3)效果图同上

3.xib实现自适应布局
(1)使用xib实现布局


1585905241827.jpg

(2)通过预设tableview的高度estimatedRowHeight属性以及tableView的rowHeight设置UITableViewAutomaticDimension来实现高度自适应

//自适应文本和图片

pragma mark -Setter

核心代码:self.rowHeight = UITableViewAutomaticDimension;
self.estimatedHeight = 44.0f(随便预设高度)

(3)效果图同上

上一篇下一篇

猜你喜欢

热点阅读