我正在开发一个使用collecitonview的应用程序。就收集视图来说,它非常简单......只需在单行水平方向视图中显示一系列uiimages。这是我的问题......
滚动时,是否需要自定义流布局才能使图像居中?我能够通过使用insetForSectionAtIndex以我想要的方式居中第一个图像,但是,当我滚动(水平)时,图像对齐到屏幕的左边缘。我能够通过继承UICollectionViewFlowLayout并覆盖targetContentOffsetForProposedContentOffset来解决这个问题。但是,我认为必须有一种方法可以在不使用自定义布局的情况下完成这么简单的任务。此外,使用此方法,虽然它在滚动时使图像居中,但它不允许分页(没有捕捉到下一个图像),这是我更喜欢的。我认为在滚动每个图像时会调用insetForSectionAtIndex,但情况似乎并非如此。有没有办法强迫它?
另一个问题与第一个问题有关......如何将正好的细胞放在我想要的地方?我将图像居中到左边和右边,但我需要在y轴上向上移动( - 负)。覆盖layoutAttributesForElementsInRect是唯一的方法吗?
提前致谢!
答案 0 :(得分:0)
在故事板中,将imageView添加到单元格的contentView后,使用它来居中它:
imageView.center = CGPointMake(cell.contentView.bounds.size.width/2,cell.contentView.bounds.size.height/2);