在我的应用中,我正在使用UICollectionView
。我想在UICollectionViewCell
之间设置修复空间。那我怎么能这样做呢?
这是我的代码:
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAtIndex section: Int) -> CGFloat {
return 20
}
通过这一行我可以在单元格之间设置空间吗?
这是我的截图,请看这个。并让我知道如何在横向或纵向模式下设置固定距离
答案 0 :(得分:1)
也许,您需要实施以下方法。
- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section;
答案 1 :(得分:1)
答案 2 :(得分:0)
您还可以使用Collection View
的尺寸检查器管理间距答案 3 :(得分:0)
如果您希望单元格之间有exact
间距,则需要计算最适合的单元格大小,以便在考虑sectionInsets
和CollectionView {{1 }}。例如
bounds
假设您的单元格大小相同,let desiredSpacing: CGFloat = 20.0
if let layout = self.collectionView?.collectionViewLayout as? UICollectionViewFlowLayout {
layout.minimumLineSpacing = desiredSpacing
let totalCellsContentWidth = self.collectionView!.bounds.width - layout.sectionInset.left - layout.sectionInset.right
let numberOfCellsPerRow: CGFloat = 10
let numberOfSpacesPerRow = numberOfCellsPerRow - 1
let cellWidth = (totalCellsContentWidth - (numberOfSpacesPerRow * desiredSpacing) / numberOfCellsPerRow)
layout.itemSize = CGSize(width: cellWidth, height: cellWidth)
}
很简单,但在包装到下一行之前会扩展以适应行上的最大单元格。正如您所看到的那样,单元格间距有点复杂。