如何在 UICollectionView 中实现页面之间的间距?

Posted

技术标签:

【中文标题】如何在 UICollectionView 中实现页面之间的间距?【英文标题】:How do I achieve spacing between pages in a UICollectionView? 【发布时间】:2014-06-27 19:12:57 【问题描述】:

UICollection 与 UIPageViewController 一样具有分页功能。使用后者,您可以使用 UIPageViewControllerOptionInterPageSpacingKey 轻松设置间距。如何使用 UICollectionView 最好地实现这一点?

【问题讨论】:

从未使用过您所要求的内容,但从长远来看,这有帮助***.com/questions/21071043/… @DogCoffee 不幸的是没有使用流式布局。 【参考方案1】:

您可能可以使用UICollectionViewLayoutAttributes 显式完成,但是我的方法(适用于集合视图和我自己的包含子视图的滚动视图)是平铺单元格且没有间距(这使得布局数学变得简单),但是单元格透明。

然后在每个单元格中创建一个更不透明的内容视图,其框架是单元格边界上的 insetRect。

【讨论】:

【参考方案2】:

您可以为您的 UICollectionView 使用 collectionView:layout:insetForSectionAtIndex: 方法。您需要添加此代码...

- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
    return UIEdgeInsetsMake(top, left, bottom, right);

这里已回答:UICollectionView spacing margins@michael23

【讨论】:

以上是关于如何在 UICollectionView 中实现页面之间的间距?的主要内容,如果未能解决你的问题,请参考以下文章

在 UICollectionView 中实现按钮点击

如何使用 Swift 3 for iOS 在 ViewController.swift 中实现 UICollectionView

在 UICollectionView 子类中实现 UIScrollViewDelegate

使用 Xib 创建 UICollectionView/UICollectionViewController 组件并在 UIViewController 中实现

如何从代码中选择 UICollectionView 的项目/单元格

如何在 UICollectionView 拖放期间删除“幽灵”单元格,并使移动单元格不透明?