上图显示了4个单元格的中心。如您所见,minimumInteritemSpacingForSectionAtIndex和minimumLineSpacingForSectionAtIndex不同。我已将Cell和Line的展位设置为1。
这是我的单元格布局代码:谢谢
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
//Get device resolution
screenSize = UIScreen.mainScreen().bounds
screenWidth = screenSize.width
screenHeight = screenSize.height
let screenWidth = screenSize.width
let size = CGSize(width: screenWidth/2 , height: 500 )
return size
}
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAtIndex section: Int) -> UIEdgeInsets {
return UIEdgeInsetsMake(0, 0, 10, 0);
}
func collectionView(collectionView: UICollectionView,
layout collectionViewLayout: UICollectionViewLayout,
minimumInteritemSpacingForSectionAtIndex section: Int) -> CGFloat {
return 1.0
}
func collectionView(collectionView: UICollectionView, layout
collectionViewLayout: UICollectionViewLayout,
minimumLineSpacingForSectionAtIndex section: Int) -> CGFloat {
return 1.0
}
PS:屏幕截图来自iPhone 6模拟器。对于iPhone 6,再加上间距似乎是正确的。
最佳答案
请注意,它被称为minimumInteritemSpacing
而不是interitemSpacing
。这意味着间距将不小于1.0,但可能会超过1.0。
对于您的情况,您可以尝试调整sizeForItemAtIndexPath
,返回等于(screenWidth - 1.0) / 2
的宽度,以使interitemSpacing精确为1.0。