只需要两步:
1. 在你的model里添加一个cell高度的字段,当你给cell里的label进行赋值时,赋值完成后需要调用强制布局,[self layoutIfNeeded];然后给model里的height字段赋值。
2.在tableview的获取cell高度的代理方法里把model.height设为cell的高度。
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
CXModel* model=self.modelArray[indexPath.row];
return model.heigth;
}
-(void)setModel:(CXModel *)model{
_model=model;
self.label1.text=model.str1;
self.label2.text=model.str2;
self.label3.text=model.str3;
[self layoutIfNeeded];
model.heigth=CGRectGetMaxY(self.label3.frame);
}
我也不太懂原理只是这样设置成功了发出来 给大家点意见,也希望大牛告诉我原理。
网友评论