【问题标题】:Fitting all items into one collection view row将所有项目放入一个集合视图行
【发布时间】:2017-09-18 03:01:23
【问题描述】:

有没有办法让集合视图中的所有项目都放在一行中,而不是自动将项目放在另一行中?我正在尝试复制类似 Instagram 故事显示的内容,如下面的链接:

但是,在我的集合视图中,我从服务器获取计数,并在集合视图中显示信息,但它总是在显示 3 个项目后转到下一行。

// number of sections function
    override func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return pictures.count
    } // end of function

【问题讨论】:

  • 在集合视图中设置项目的宽度进行一些搜索。

标签: swift swift3 uicollectionview


【解决方案1】:

我认为您不希望在 Collection 视图中垂直滚动。

要在集合视图中水平滚动,请在情节提要中选择集合视图并将scroll direction 更改为水平。

参考下图:

【讨论】:

    【解决方案2】:

    您可以像这样添加 collectionViewLayout 委托方法。 CGFloat(3.0) 是你想要多少个item,你得把它从collectionView的宽度中分出来

    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
        let itemWidth: CGFloat = ((collectionView.bounds.size.width)  / CGFloat(3.0))
        return CGSize(width: itemWidth, height: collectionView.bounds.size.height)
    }
    

    【讨论】:

      猜你喜欢
      • 2014-02-25
      • 1970-01-01
      • 1970-01-01
      • 2018-02-15
      • 2016-11-03
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 1970-01-01
      相关资源
      最近更新 更多