美文网首页
UITableViewCell中嵌套UICollectionVi

UITableViewCell中嵌套UICollectionVi

作者: 嗯o哼 | 来源:发表于2020-10-15 16:57 被阅读0次

    1.UITableView设置cell 高度自适应

    self.tableView.estimatedRowHeight = 44;
    self.tableView.rowHeight = UITableViewAutomaticDimension;
    

    2.在cell中更新collectionview的高度

    通过collectionView.collectionViewLayout.collectionViewContentSize可以获取到collectionView的高度

        // 更新数据源
    -(void)setItemCount:(int)itemCount{
        _itemCount = itemCount;
        [self.collectionView reloadData];
        [self.collectionView layoutIfNeeded];
    }
    
    -(CGSize)systemLayoutSizeFittingSize:(CGSize)targetSize withHorizontalFittingPriority:(UILayoutPriority)horizontalFittingPriority verticalFittingPriority:(UILayoutPriority)verticalFittingPriority{
        // 在对collectionView进行布局
        self.collectionView.frame = CGRectMake(0, 0, targetSize.width, 44);
        [self.collectionView layoutIfNeeded];
        
        // 由于这里collection的高度是动态的,这里cell的高度我们根据collection来计算
        CGSize collectionSize = self.collectionView.collectionViewLayout.collectionViewContentSize;
        CGFloat cotentViewH = collectionSize.height;
        
        return CGSizeMake([UIScreen mainScreen].bounds.size.width, cotentViewH + 30);
    }
    

    相关文章

      网友评论

          本文标题:UITableViewCell中嵌套UICollectionVi

          本文链接:https://www.haomeiwen.com/subject/mxurkktx.html