如何自动调整UICollectionViewCell的高度?

时间:2016-05-22 15:44:25

标签: ios swift uitableview uicollectionview uicollectionviewcell

我有一个带有下一个自定义单元格的UICollectionView:

enter image description here

现在,我想根据底部UITableView的高度调整我的UICollectionViewCell高度

所以,我单元格的高度可以是500,400,800等。

我工作了差不多一个星期,无法解决这个问题。任何人都可以帮我吗?

我尝试了两种方法:

使用:

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {

并使用:

(collectionView.collectionViewLayout as! UICollectionViewFlowLayout).itemSize = CGSizeMake(100, 100)

但没人工作。有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:0)

sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
   let height = yourTableView.view.frame.height
   let percentRatio = 0.2 
   return CGSize(width: collectionView.cellForItemAtIndexPath(indexPath)?.frame.width, height: height * percentRatio)
}

将它放在ViewController中,作为集合视图的数据源和代理。百分比是表格高度的百分比。您可以将其更改为您喜欢的任何内容。希望它有所帮助!