HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – UICollectionView:不重新使用的项目不计算不同大小的项目大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个收集视图与我声明的不同的项目大小
- (CGSizE)collectionView:(UICollectionView *)collectionView
                  layout:(UICollectionViewLayout*)collectionViewLayout
  sizeForItemATindexPath:(NSIndexPath *)indexPath {

    FeedItem *item = [_imagesLinkArray objectATindex:indexPath.row];
    return CGSizeMake(250,200*item.sizeFactor);
}

当单元格在collectionView中被重用时:cellForItemATindexPath:
该项目正在使用reesed项目大小呈现,而不是在sizeForItemATindexPath:中指定的项目.

有任何想法吗?

解决方法

看来,CollectionView:layout:sizeForItemATindexPath:在布局准备之前被调用一次,在呈现CollectionView之前.

所以每当你滚动和一个单元格出队时,它被调整到由collectionView提供的大小:layout:sizeForItemATindexPath:在准备阶段.您希望每当具有特定indexPath的单元格可见时调用方法所以你可以动态改变单元格大小?似乎这不是如何使用这种方法,它可以用于在布局准备阶段一次确定一个单元格的大小.

如果您因为某些原因需要重新计算尺寸,可以使用[UICollectionViewLayout invalidateLayout]使布局无效.

大佬总结

以上是大佬教程为你收集整理的ios – UICollectionView:不重新使用的项目不计算不同大小的项目全部内容,希望文章能够帮你解决ios – UICollectionView:不重新使用的项目不计算不同大小的项目所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。