繁体   English   中英

如何居中对齐CollectionView单元格?

[英]How to center align CollectionView Cell?

嗨,有一个collectionview。 每个单元的宽度为screenwidth / 3。 表示连续3个单元格。 现在。 如果有10或11个像元,则将有4行。 最后一行有1或2个单元格。 问题是,我想在不更改其大小的情况下将这些单元对齐到中心。 现在,单元格左对齐。

注意:我想在一个部分中实现此目的(因为collection-view已经有多个部分)。 图片附上我想实现的目标。 在此处输入图片说明

您可以使用多个部分来解决此问题。 条数应为

numberOfSection = totalItemCount/3 > Int(totalItemCount/3) ? Int(totalItemCount/3) + 1 : Int(totalItemCount/3)

不要使用天花板。 然后该部分中的项目数应为

numberOfItemInSection = totalItemCount-section*3 < 3 ? totalItemCount-section*3 : 3

然后实现UICollectionViewDelegateFlowLayout委托。 collectionView(_ collectionView:, layout:, insetForSectionAt:)设置的位置,

let minimumInterItemSpacing: CGFloat = 8.0
// minimumInterItemSpacing should be same in the delegate function
let itemCountInSection = collectionView.numberOfItems(inSection: section)
let edgeSpace = (collectionView.bounds.width - ((itemCountInSection*self.itemWidth) + (minimumInterItemSpacing*(itemCountInSection-1)))) / 2
return UIEdgeInsets(top: self.topSpace, left: edgeSpace, bottom: self.bottomSpace, right: edgeSpace)

设置其他适合您的委托方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM