在顶部显示节标题,UICollectionViewFlowLayout滚动设置为水平

Ann*_*una 16 ios uicollectionview uicollectionviewlayout

这是这个问题的副本.我再次问,因为接受的答案不起作用,没有人提供更多关于假设正确答案是如何工作的解释.

所以情况就是这样:我想将集合视图显示在一行中.为此,我将自定义应用于UICollectionViewFlowLayout集合视图并将滚动设置为水平.一切都工作正常,除了节头消失了.

标题消失了

为了解决这个问题,我实现了这个功能:

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section 
  {
    return CGSizeMake(350, 35);
  }
Run Code Online (Sandbox Code Playgroud)

现在显示标题,但问题是它显示在单元格的左侧,而不是通常的顶部.

我在寻找解决方案时偶然发现了上面的链接,但就像我说的那样,接受的答案根本不起作用,我无法找到关于这种情况的其他解决方案.所以有人可以帮助我吗?

错误的标题位置

小智 1

我们可以通过使用委托方法来做到这一点 -

(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
Run Code Online (Sandbox Code Playgroud)

并将左侧插图保持为补充视图宽度的负值并管理顶部插图