autolayout在cell高度變化中的應用(下)

有了autolayout,咱們徹底能夠用xib去佈局cell上的子空間,不用再去寫冗餘的建立代碼及frame模型。佈局

本身僅僅須要作的是:拿到cell最下面固定的子控件(一直存在),在返回高度的方法中,寫以下代碼便可it

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    HomePageCell *cell = [tableView dequeueReusableCellWithIdentifier:kHomePageCell];

    HomePageCellModel *model = self.dataList[indexPath.row];
    cell.homePageCellModel = model;
    
    [cell layoutIfNeeded];
    return cell.locationContainer.y + cell.locationContainer.height + 13 + 13;
}io

使用注意:若是label是多行的必定要設置preferredMaxLayoutWidth,若是存在多個多行label,都要設置,這樣才能獲得正確的佈局table

相關文章
相關標籤/搜索