我正在使用UICollectionViewFlowLayout来显示网格视图,这就是我看到它的方式。
问题在于左侧的差距。我对使用UICollectionViewFlowLayout有点新意,所以我无法弄清楚如何摆脱那边的差距。
请帮忙
答案 0 :(得分:1)
要缩小左侧空间,您可以在sectionInset
上设置UICollectionViewFlowLayout
属性
flowLayout.sectionInsets = UIEdgeInsets(top: 50.0, left: 0.0, bottom: 50.0, right: 0.0)
或者您可以实现此方法:
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAtIndex section: Int) -> UIEdgeInsets {
return UIEdgeInsets(top: 50.0, left: 0.0, bottom: 50.0, right: 0.0)
}
如果委托对象没有实现 collectionView:layout:insetForSectionAtIndex:方法,流程布局 使用此属性中的值来设置每个部分的边距。
答案 1 :(得分:1)
尝试使用:
- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
{
return UIEdgeInsetsMake(5, 5, 5, 5); //desired values
}
希望它有所帮助。
答案 2 :(得分:1)
我的第一个猜测是检查sectionInsets
。您可以直接在流程布局上设置它们:
flowLayout.sectionInsets = UIEdgeInsets(...)
或通过~UICollectionViewDelegateFlowLayout`方法:
optional func collectionView(_ collectionView: UICollectionView,
layout collectionViewLayout: UICollectionViewLayout,
insetForSectionAtIndex section: Int) -> UIEdgeInsets {
}