collectionview reloaddata 刷新失效或者 不走cellforrow刷新cell
Posted joker4o
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了collectionview reloaddata 刷新失效或者 不走cellforrow刷新cell相关的知识,希望对你有一定的参考价值。
三个方法,
1,
```objectivec
dispatch_async(dispatch_get_main_queue(), ^ //加入到主线程,强制执行reload
[self.collectionView reloadData];
);
2,
```objectivec
[self.collectionView reloadSections:[NSIndexSet indexSetWithIndex:0]];//指定刷新的section或者cell
3,reloadSections或者reloadData闪动,因为layer有个隐式动画,在下面的方法里面刷新就行了。
[UIView performWithoutAnimation:^
[self.collectionView reloadSections:[NSIndexSet indexSetWithIndex:0]];
];
综上,最保险的方法
dispatch_async(dispatch_get_main_queue(), ^ //加入到主线程,强制执行reload
[UIView performWithoutAnimation:^
[self.collectionView reloadSections:[NSIndexSet indexSetWithIndex:0]];
];
);
顺带提一下tabview有时候不走cellforrow
在tabview的frame宽度或者高度为0的时候,这个时候就不会走cellforrow,或许是因为不想浪费性能所以这样设计,特别是在用monsary布局的时候,很容易出现这种情况
以上是关于collectionview reloaddata 刷新失效或者 不走cellforrow刷新cell的主要内容,如果未能解决你的问题,请参考以下文章
CollectionView:scrollToItem、reloadData 和调度队列
在 UICollectionViewDelegate#collectionView:didSelectItemAtIndexPath 中调用 UICollectionView#reloadData:隐
collectionview reloadData时如何自定义UICollectionView过渡动画?
collectionview reloaddata 刷新失效或者 不走cellforrow刷新cell