【问题标题】:uicollectionview Loads wierdlyuicollectionview 加载奇怪
【发布时间】: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 & 如果我们滚动并加载它,它会回到正确的位置。谁能建议这有什么问题?

【问题讨论】:

  • 需要更多描述...提供更多信息..

标签: ios ipad uicollectionview uicollectionviewcell uicollectionviewlayout


【解决方案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) 对您有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-12-14
      • 2013-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-28
      • 2021-09-18
      相关资源
      最近更新 更多