其一就是你说的 通过masonry等第三方的约束工具类。
首先UItableView的cell高度必须设置为如下。
UITableView.cellHeight = UITableViewAutomaticDimension
estimatedRowHeight = 44.f(大于即可)
加约束时注意, 你的控件上下之间和高度都要有约束。最上方约束约束到ContentView的上放,最下方的约束加到ContentView的底部。
运行即可cell自动适应控件内容了。
简单的举个栗子:
你的cell在XIB中有一个UILabel,并设置了。上、下、左、右的约束。并且设置了如上所说的cellHeight和estimatedRowHeight的值。
你自己传入UILabel的文本,会把Cell撑起来的。
两种方式,看你的tableView是哪种样式。如果是UITableViewStylePlain,你可以将UITableViewCell的separator设置为UITableViewCellSeparatorStyleNone。将tableViewCell的背景色,contentView的背景色设置为透明,在contentView中添加一个UIImageView做为背景,使UIImageView的高度小于cell的高度,这样创建出的tableView就可以使每个cell之间看起来有一定间隔。这个间隔就是imageView的高度与cell的高度之间的差值。
如果你的tableView样式是UITableViewStyleGrouped,那就更好办了,因为group的tableView每个section都是隔开的,你只需要给每个section添加一行cell就行了。如果需要调整section之间的距离,你可以用UITableView的属性sectionHeaderHeight或sectionFooterHeight来设置。也可以用delegate方法来设置高度,heightForHeaderInSection或heightForFooterInSection
希望可以帮到你
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)