uicollectionview 加载奇怪
Posted
技术标签:
【中文标题】uicollectionview 加载奇怪【英文标题】:uicollectionview Loads wierdly 【发布时间】:2013-03-18 16:03:50 【问题描述】:我使用自定义集合 cell.set 创建了一个集合视图,其中 flowlayout 为
UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];
[flowLayout setItemSize:CGSizeMake(250, 480)];
[flowLayout setScrollDirection:UICollectionViewScrollDirectionHorizontal];
[self.templateCollectionView setCollectionViewLayout:flowLayout];
我将它设置为水平,但图中仍然有一个单元格放错了位置,请参阅att mmp
misplaced & 如果我们滚动并加载它,它会回到正确的位置。谁能建议这有什么问题?
【问题讨论】:
需要更多描述...提供更多信息.. 【参考方案1】:this answer 上有一个适合我的解决方法。以下是我为水平滚动编辑的修复程序。基本上只是过滤掉下面提供坏帧的属性项。
- (NSArray *)layoutAttributesForElementsInRect:(CGRect)rect
NSArray *attributes = [super layoutAttributesForElementsInRect:rect];
NSMutableArray *newAttributes = [NSMutableArray arrayWithCapacity:attributes.count];
for (UICollectionViewLayoutAttributes *attribute in attributes)
if (attribute.frame.origin.y + attribute.frame.size.height <= self.collectionViewContentSize.height)
[newAttributes addObject:attribute];
return newAttributes;
【讨论】:
【参考方案2】:当我们没有给出适当的单元格间距时,通常会发生这种情况。确保在填充 uicollectionview 的单元格时,应给出单元格间距。 也可以通过UICollectionView flowLayout not wrapping cells correctly (ios) 对您有所帮助。
【讨论】:
以上是关于uicollectionview 加载奇怪的主要内容,如果未能解决你的问题,请参考以下文章