动态计算cell的行高,只需要在自定义cell里写入这个方法并声明,然后在cellForRow方法里设置tableView的rowHeight = cell.cellHeight;即可完成动态计算cell的行高。
/***拿到最后一个控件的最大Y值并返回*/
- (CGFloat)cellHeight {
//强制布局之前,需要先手动设置下cell的真实宽度,以便于准确计算
CGRect rect = self.frame;
rect.size.width = [UIScreen mainScreen].bounds.size.width;
self.frame = rect;
[self layoutIfNeeded];//一定要强制布局下,否则拿到的高度不准确
return CGRectGetMaxY(self.imageView.frame) + 10;
}