如何在 CollectionView 中添加业务逻辑? [关闭]

Posted

技术标签:

【中文标题】如何在 CollectionView 中添加业务逻辑? [关闭]【英文标题】:How to Add Business Logic in CollectionView? [closed] 【发布时间】:2019-05-15 09:55:34 【问题描述】:

业务逻辑是:-

    如果项目是偶数,则在每行显示 2 个。 如果项目是奇数,则显示第一个以跨越整行,并在每行显示剩余的跨越 2 个。

【问题讨论】:

您要做的是自定义collectionView布局,RayWenderlich网站上有一个非常好的教程:raywenderlich.com/…问候, 【参考方案1】:

检查 sizeForItemAt 方法中的 items.count 并返回 collectionView.bounds.width 如果它是第一行并且项目数是奇数。否则返回collectionView.bounds.width / 2

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize 
    if items.count % 2 == 1 && indexPath == IndexPath(item: 0, section: 0) 
        return CGSize(width: collectionView.bounds.width, height: 50)
     else 
        return CGSize(width: (collectionView.bounds.width / 2) - 10, height: 50)
    

奇数

偶数

【讨论】:

以上是关于如何在 CollectionView 中添加业务逻辑? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 collectionView 单元格中添加可滚动视图

如何在 CollectionView 中添加 SearchBar? [关闭]

如何通过 indexPath 在水平 collectionView 中动态添加视图/图层

如何在 CollectionView 单元格上添加过渡动画?

如何在 swift 3 中的 tableview 单元格中添加带有自定义视图的 collectionView?

如何在collectionView自定义布局中的其他补充标题单元格上方添加标题补充单元格