swift - 连续包含不同项目的 Collectionview

标签 swift uicollectionview uicollectionviewlayout

好的。我的 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 协议(protocol)的一部分,是如何动态设置 UICollectionViewCell 的尺寸(即在运行时)。

在 sizeForItemAtIndexPath 中,创建一个 CGSize 对象,它是您希望每个 UICollectionViewCell 的大小,并简单地使用该对象作为函数的返回值。在您的示例中,该 CGSize 对象的宽度大约是主视图的宽度除以 5。我说大约是因为您还需要在单元格之间填充空间,以及可能在每个部分周围的一些非零 sectionInsets UICollectionView。

要设置单元格之间的填充,请转到 Storyboard中 UICollectionView 对象的属性检查器 Pane ,并将属性 Pane 置于“测量模式”。您会看到“最小间距”,“对于单元格”和“对于行”。 “对于单元格”字段是您可以指定单元格之间所需的水平间距的地方。在“For Lines”字段中,您可以指定单元格之间的垂直间距。

关于swift - 连续包含不同项目的 Collectionview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39375728/

相关文章:

ios - 显示标签的水平滚动 UICollectionView(自定义流布局)

swift - 如何检测最后一个单元格在 UICollectionView 中是否可见?

ios - swift 午睡框架 : do something before sending requests

ios - swift 减去两种不同的时间格式

iphone - 在我的设备上使用 Xcode (iPhone 6+) 进行编译时出错

ios - 防止在键盘出现时对 UICollectionView 进行任何更改

ios - 水平设置 UICollectionView header 时应用程序崩溃

ios - collectionView 中的异常(_ :layout:sizeForItemAt:) when accessing layout. collectionViewContentSize

ios - Xcode 测试目标无法访问框架

ios - 带按钮的 UICollectionView