【问题标题】:How to set items in collection view go bottom-to-top with swift如何在集合视图中设置项目从下到上快速
【发布时间】:2017-05-04 09:47:02
【问题描述】:

我正在制作一个具有固定高度和宽度以及水平滚动方向的集合视图。

一开始我将有 1 个单元格,我希望它位于集合视图的右侧而不是左侧,当更多单元格出现时,我希望它们堆叠在前一个单元格的右侧,如 1-2 - 3.

我搜索了一个答案,但所有类似的问题都是针对目标 c。

有什么想法我怎么能用 swift 做到这一点?

提前致谢。

【问题讨论】:

    标签: ios swift swift3 uicollectionview


    【解决方案1】:

    问题在于,如果您尝试在 viewWillAppear 中设置集合视图的 contentOffset,则集合视图尚未呈现其项目。因此 self.collectionView.contentSize 仍然是 {0,0}。解决方案是向集合视图的布局询问内容大小。

    此外,您需要确保仅在 contentSize 高于集合视图的边界时设置 contentOffset。

     func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    
     let contentSize: CGSize? = collectionView?.collectionViewLayout.collectionViewContentSize
        if contentSize?.height > collectionView?.bounds.size.height {
    
            let targetContentOffset = CGPoint(x: 0.0, y: (contentSize?.height)! - (collectionView?.bounds.size.height)!)
            collectionView?.contentOffset = targetContentOffset
          }
    
     }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-03
      • 1970-01-01
      • 2020-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-07
      • 2017-07-01
      相关资源
      最近更新 更多