AutoLayout的解决了我们每次计算cell高度那繁琐的过程,网上也有好用的缓存高度的第三方框架如github上点赞较多的 UITableView-FDTemplateLayoutCell
简单好用。
AutoLayout好用就在于cell里面写好布局的事 ,高度的事就不用自己另外操心。更加简单,效率方面,苹果既然能推,那怎么也不会差吧!
本来用的好好的,但突然有天一个10.3.3系统的iPhone6手机,出现了cell高度错乱的问题,不应该啊,我这12系统的6s显示很完美啊。反复检查代码。没有发现哪有有不妥的地方。用视图检查器查看,在10.3.3系统下,cell的contentView高度不会自动更新。脑袋一晃而过,是不是需要加设置一个默认高度的属性(estimatedRowHeight)。马上一试。果不其然。还真是这个问题。系统bug啊!为啥只在10.3系统出现此问题,未知。苹果官网也没有找到相关文档解释。
增加代码如下:
self.tableView.estimatedRowHeight = 150;//设置cell的默认高度
self.tableView.rowHeight = UITableViewAutomaticDimension;//设置自适应高度
以后使用自适应高度,还是都加上estimatedRowHeight属性设置。