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

问题描述

我有一个约束在屏幕边缘的UICollectionView。但是,当屏幕加载时,我希望第一个单元格具有一些填充,以便它稍微偏离屏幕的左边缘。我该如何实现?

解决方法

collectionView.contentInset = UIEdgeInsets(top: 10,left: 10,bottom: 10,right: 10)

collectionView内部的空间

,

您可以使用以下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,insetForSectionAt section: Int) -> UIEdgeInsets {
         return UIEdgeInsets(top: 10,right: 10)
      }

      func collectionView(_ collectionView: UICollectionView,minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
         return 1.0
      }

      func collectionView(_ collectionView: UICollectionView,minimumLineSpacingForSectionAt section: Int) -> CGFloat {
         return 1.0
      }
}