iOS7表格自适应高度

  • 增加约束,参考的label变小

cell自动计算行高

  1. 给预估行高tableView.estimatedRowHeight = 300;
  • 给cell的contentView设置约束
    • 上下左右的边缘要钳一个offset(0)
    • 底部设置设置一个向上的约束
    • 它要知道到哪里结束!!
[self.contentView mas_makeConstraints:^(MASConstraintMaker *make){
        make.edges.offset(0);
        make.bottom.mas_equalTo(lastButton).offset(10);
}];
  • make.edges.offset(0);等价于make.edges.equalTo(superView).insets(UIEdgeInsetsMake(0, 0, 0, 0));和父控件边缘距离为0,就是父控件尺寸;edges只能设置边距insets
  • edges 其实就是top、left、bottom、right的一个简化 分开写也可以 一句话更省事
  • masonry的update可以是要添加,新增、修改约束
  • 不需要实现-tableView:heightForRowAtIndexPath:代理方法


iOS8 自适应高度

self.tableView.estimatedRowHeight = 80;
self.tableView.rowHeight = UITableViewAutomaticDimension;
  • UITableViewAutomaticDimension自动计算高度
    • 直接在contentView设置子控件约束
    • 不用实现-tableView:heightForRowAtIndexPath:代理方法

你可能感兴趣的:(iOS7表格自适应高度)