UICollectionView中的Swift自动布局,单元格的内在高度为

时间:2017-06-15 14:16:35

标签: ios swift uicollectionview autolayout

我在使用自动布局和UICollectionView时遇到了困难。我有一个垂直的UICollectionVIewFlowLayout,它包含两种不同类型的单元格,如下图所示: enter image description here

SingleCard单元格包含带图像的子视图(UIImageView)。 HorizList单元格包含子视图,该子视图是水平UICollectionView(缩略图照片列表)。两种细胞类型的高度如下:

SingleCard:单元格的宽度应与屏幕宽度相同。 高度应该是动态的UIImageView的高度(保持图像的比例,并使其填充屏幕宽度,无论设备大小)

HorizList:高度不变,比如200分。

我在CollectionViewController中的尝试是

override func viewDidLoad() {
   ...
   let layout = collectionView?.collectionViewLayout as! UICollectionViewFlowLayout
   layout.estimatedItemSize = CGSize(width: 200.0, height: 235.0)
}

我这样做是为了获得两个单元格的内在大小。然后我没有实现

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize 

完全没有。

我的问题是,我在

中实施了什么
override var intrinsicContentSize: CGSize {
    ??
}

两种不同的细胞类型?也许这不是我唯一需要做的事情,如果是这样的话我会感激额外的提示。 谢谢! / OLA

0 个答案:

没有答案