在Swift 4中垂直调整.xib(单元格)的大小

时间:2018-11-07 00:44:08

标签: ios swift xcode swift4

我创建了一个.xib(单元格),用于显示商店图像和商店信息。

enter image description here

灰色是图像中未​​调整大小的部分,是UICollectionView。

所有商店都有不同的大小,但是在UICollectionView(显示图像)中,无论大小如何,它们都将显示为“缩放以填充”。

我希望.xib垂直尺寸(UICollectionView)可以增长和缩小以适合图像的垂直尺寸。我该怎么办?

1 个答案:

答案 0 :(得分:1)

如果您要处理UICollectionViewCell,则实际上并不需要直接更改/更新xib的高度或大小。更重要的是,您需要的是CollectionViewFlowLayout方法。

我认为您需要的是

1. In your xib, you should properly layout your items with `Autolayout`. 
2. Make sure that you set the `collectionview.delegate = self` somewhere based on your need
3. Add `UICollectionViewDelegateFlowLayout` methods and return proper values.


 func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
    return CGSize(width: `width`, height: `height`)
}

上面的委托方法应该足够了,但是您可能需要根据需要使用其他方法。