连续包含不同项目的 Collectionview
Collectionview with Different items in a row
好的。我的 Collectionview 工作正常。但我想稍微改变一下我的布局。
我有一个不同数字的数组 array.count = 5 ,我需要连续 5 个项目。
我不知道如何在我的 Collectionview 中显示它。
感谢您的帮助。
更新:
现在每一行都是 6 !
但我不知道如何处理数字数组!
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
let numberOfCellInRow : Int = 6
let padding : Int = 1
let collectionCellWidth : CGFloat = (self.view.frame.size.width/CGFloat(numberOfCellInRow)) - CGFloat(padding)
return CGSize(width: collectionCellWidth, height: 200)
}
实现 sizeForItemAtIndexPath 是 UICollectionViewDelegateFlowLayout 协议的一部分,是如何动态设置 UICollectionViewCell 的尺寸(即在运行时)。
在 sizeForItemAtIndexPath 中,创建一个 CGSize 对象,它是您希望每个 UICollectionViewCell 的大小,然后将该对象用作函数的 return 值。在您的示例中,该 CGSize 对象的宽度大约是主视图的宽度除以 5。我说大约是因为您还需要在单元格之间填充空间,以及可能在每个部分周围的一些非零 sectionInsets UICollectionView.
要设置单元格之间的填充,请转到故事板中 UICollectionView 对象的属性检查器窗格,并将属性窗格放在 "Measurements mode" 中。您会看到 "Min Spacing"、"For Cells" 和 "For Lines"。在 "For Cells" 字段中,您可以指定单元格之间的水平间距。在 "For Lines" 字段中,您可以指定单元格之间的垂直间距。
好的。我的 Collectionview 工作正常。但我想稍微改变一下我的布局。 我有一个不同数字的数组 array.count = 5 ,我需要连续 5 个项目。 我不知道如何在我的 Collectionview 中显示它。
感谢您的帮助。
更新:
现在每一行都是 6 !
但我不知道如何处理数字数组!
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
let numberOfCellInRow : Int = 6
let padding : Int = 1
let collectionCellWidth : CGFloat = (self.view.frame.size.width/CGFloat(numberOfCellInRow)) - CGFloat(padding)
return CGSize(width: collectionCellWidth, height: 200)
}
实现 sizeForItemAtIndexPath 是 UICollectionViewDelegateFlowLayout 协议的一部分,是如何动态设置 UICollectionViewCell 的尺寸(即在运行时)。
在 sizeForItemAtIndexPath 中,创建一个 CGSize 对象,它是您希望每个 UICollectionViewCell 的大小,然后将该对象用作函数的 return 值。在您的示例中,该 CGSize 对象的宽度大约是主视图的宽度除以 5。我说大约是因为您还需要在单元格之间填充空间,以及可能在每个部分周围的一些非零 sectionInsets UICollectionView.
要设置单元格之间的填充,请转到故事板中 UICollectionView 对象的属性检查器窗格,并将属性窗格放在 "Measurements mode" 中。您会看到 "Min Spacing"、"For Cells" 和 "For Lines"。在 "For Cells" 字段中,您可以指定单元格之间的水平间距。在 "For Lines" 字段中,您可以指定单元格之间的垂直间距。