如何在 UICollectionViewCell 和 UICollectionView 之间设置一个空格?

Posted

技术标签:

【中文标题】如何在 UICollectionViewCell 和 UICollectionView 之间设置一个空格?【英文标题】:How do I set a space between UICollectionViewCell and UICollectionView? 【发布时间】:2020-08-23 15:17:50 【问题描述】:

我有一个UICollectionView,我将其限制在屏幕边缘。但是,当屏幕加载时,我希望第一个单元格有一些填充,以便它稍微远离屏幕的左边缘。我怎样才能做到这一点?

【问题讨论】:

【参考方案1】:
collectionView.contentInset = UIEdgeInsets(top: 10, left: 10, bottom: 10, right: 10)

collectionView 内的空间

【讨论】:

【参考方案2】:

您可以使用以下 UICollectionViewDelegateFlowLayout 委托函数控制填充:

extension YourCollectionViewController : UICollectionViewDelegateFlowLayout  
     func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize 
          let width = collectionView.frame.width
          return CGSize(width: width/2 - (inset+padding), height: width/2 - (inset+padding))
      

      func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets 
         return UIEdgeInsets(top: 10, left: 10, bottom: 10, right: 10)
      

      func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat 
         return 1.0
      

      func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat 
         return 1.0
      

【讨论】:

以上是关于如何在 UICollectionViewCell 和 UICollectionView 之间设置一个空格?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 7 中刷新 UICollectionViewCell?

如何在 UICollectionViewCell 内缩放 UIScrollView?

如何在重新加载时清除 UICollectionViewCell?

Swift:如何在 UICollectionViewCell 中使用“prepareForSegue”?

点击时如何在 UICollectionViewCell 中制作此动画?

如何确定何时显示 UICollectionViewCell?