Cell 高度緩存

  id model = self.photos[indexPath.row];
ShopPhotoPostModel *postModel = (ShopPhotoPostModel *)model;
            if (postModel.cellHeight) {
                return postModel.cellHeight;
            }
 ShopPhotoPostModel *feed = [self.photos objectAtIndex:indexPath.row];
            
            static SceneFeedCell *cell = nil;
            static dispatch_once_t onceToken;
            dispatch_once(&onceToken, ^{
                cell = [self.sceceFeedView.tableView dequeueReusableCellWithIdentifier:SceneFeedIdentifierCell];
            });
            
            cell.entity = feed;
            
            [cell updateConstraints];
            
            CGSize size = [cell.contentView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize];
            feed.cellHeight = size.height + 1.0f;
            
            return size.height + 1.0f;

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容