iOS UiCollectionView - 使用自定义 UiCollectionViewLayout 重新加载数据

Posted

技术标签:

【中文标题】iOS UiCollectionView - 使用自定义 UiCollectionViewLayout 重新加载数据【英文标题】:iOS UiCollectionView - reloadData using custom UiCollectionViewLayout 【发布时间】:2013-05-02 00:03:28 【问题描述】:

我正在尝试使用自定义 UiCollectionViewLayout,但我遇到了一个小问题。 在我的项目中,我想加载一些 JSON 信息并将其呈现在 UICollectionView 中。我需要从 WEB 加载信息,然后(当所有内容都加载后)我需要重新加载我的 Collection View。 如果我使用UICollectionViewFlowLayout,一切都会很好。但是,当我尝试使用自己的布局时,reloadData 无法正常工作并且没有任何反应。

我正在使用异步任务重新加载数据:

dispatch_async(dispatch_get_main_queue(), ^ 

            [self.newsCollectionView reloadData];

        );

谢谢

【问题讨论】:

请在 cellForItemAtIndexPath 和您的自定义布局中显示更多代码! 【参考方案1】:

听起来您正在寻找invalidateLayout,这会导致调用prepareLayoutcollectionViewContentSizelayoutAttributesForElementsInRect:etc。

【讨论】:

我发誓 invalidateLayout 不会导致调用 prepareLayout (等)......我已经尝试了 100 次。生病了。

以上是关于iOS UiCollectionView - 使用自定义 UiCollectionViewLayout 重新加载数据的主要内容,如果未能解决你的问题,请参考以下文章

iOS 使用 PullToRefreshView 使 UICollectionView 可滚动

使用 iOS 7 的 UICollectionView?边距空间

当我在 iOS 14 上的 UITableView 单元格内使用 UICollectionView 时,不会调用 UICollectionView cellForItemAt

iOS:使用约束动画 UICollectionView 垂直扩展?

IOS:通过长按选择 UICollectionView 单元格

iOS核心笔记——UICollectionView-辅助视图