【发布时间】:2020-08-23 15:17:50
【问题描述】:
我有一个UICollectionView,我将其限制在屏幕边缘。但是,当屏幕加载时,我希望第一个单元格有一些填充,以便它稍微远离屏幕的左边缘。我怎样才能做到这一点?
【问题讨论】:
标签: ios swift xcode uicollectionview uicollectionviewcell
我有一个UICollectionView,我将其限制在屏幕边缘。但是,当屏幕加载时,我希望第一个单元格有一些填充,以便它稍微远离屏幕的左边缘。我怎样才能做到这一点?
【问题讨论】:
标签: ios swift xcode uicollectionview uicollectionviewcell
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, 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
}
}
【讨论】: