collectionView使用estimatedItemSize自我调整然后显示ok,当collectionView reloaddata时,colllectionview将scrollToTop

时间:2017-05-10 09:39:22

标签: ios

我使用下面的代码来调整工作正常的集合视图单元格。

- (UICollectionViewLayoutAttributes *)preferredLayoutAttributesFittingAttributes:(UICollectionViewLayoutAttributes *)layoutAttributes {

    UICollectionViewLayoutAttributes *attributes = [super preferredLayoutAttributesFittingAttributes:layoutAttributes];


    CGRect newFrame = attributes.frame;


    [self setNeedsLayout];
    [self layoutIfNeeded];

    CGSize desiredSize = [self systemLayoutSizeFittingSize:UILayoutFittingCompressedSize withHorizontalFittingPriority:UILayoutPriorityRequired verticalFittingPriority:UILayoutPriorityDefaultLow];

    newFrame.size = CGSizeMake([UIScreen mainScreen].bounds.size.width, desiredSize.height);
    attributes.frame = newFrame;
    return attributes;
}

但是当我使用或致电[collectionView reloadData]时  集合视图自动滚动到集合视图的顶部。

请帮我解决。

0 个答案:

没有答案