我有一个使用标准 FlowLayout 类的 CollectionView,每个部分都有水平滚动和页眉和页脚。
现在页脚和页眉视图之间(即部分之间)的像素为零。我想在它们之间添加一点间距,但不要在第一部分上方或在最后一部分之后。所以我不能只在页眉和页脚视图本身中添加该空间。
我本来期望像“interSectionSpacing”这样的东西,但显然没有这样的设置。有任何想法吗?
我有一个使用标准 FlowLayout 类的 CollectionView,每个部分都有水平滚动和页眉和页脚。
现在页脚和页眉视图之间(即部分之间)的像素为零。我想在它们之间添加一点间距,但不要在第一部分上方或在最后一部分之后。所以我不能只在页眉和页脚视图本身中添加该空间。
我本来期望像“interSectionSpacing”这样的东西,但显然没有这样的设置。有任何想法吗?
所以事实证明没有设置。这就是我最终的结果:
我将标题视图的内容设置为与标题视图本身的底部对齐,因此它似乎具有相同的可见高度,即使我使标题视图高于其内容(自动布局使这非常容易)。
然后我根据 UICollectionViewFlowLayout 的这个委托方法中的节索引设置标题的高度:
#define kHeaderHeight 42
#define kInterSectionMargin 8
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section
{
if (section == 0) {
return CGSizeMake(0, kHeaderHeight);
}
return CGSizeMake(0, kHeaderHeight + kInterSectionMargin);
}
现在各部分之间有一点空间,但在第一部分之前没有。
你是对的,没有“interSectionSpacing”这样的东西,但有一些接近的东西。
试试sectionInset
你的UICollectionViewFlowLayout
.
UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];
[flowLayout setSectionInset:UIEdgeInsetsMake(top, left, bottom, right)];
您可以在 Nib 文件中设置页眉和页脚之间的间距。转到“集合视图”的“大小检查器”并将标题大小高度设置为所需值。