我有一个使用UICollectionView的全屏图像库。它被分页,一切运行正常,但有一件事我不喜欢。
单元格只有在进入可见视口时才会被重用,并且在分配新图像时会出现闪烁效果(当前行为正常)。
如何指定比当前UICollectionView框架稍大的视口,以便加载和重用视图外的+ 1 / -1页面?当他们进入视野时,他们已经被初始化并准备就绪,因此闪烁效应会消失。
谢谢!
答案 0 :(得分:0)
注意:这是假设垂直,调整水平
您可以将框架放大,然后添加contentInset
CGFloat offset = 40.0; // or whatever works
CGRect yourFrame = yourCollectionView.bounds;
yourFrame.size.height += offset;
yourCollectionView.bounds = yourFrame;
CGFloat halfOffset = offset / 2.0;
yourFlowLayout.sectionInset = UIEdgeInsetsMake(halfOffset, 0, halfOffset, 0);
你必须根据你的代码放置这些,但这就是我们正在做的事情。我们正在扩展您的框架,以便细胞重用发生在可见边界之外。通过将插入内容添加到流布局中,可以使内容仍然正确对齐。