Swift:UICollectionView invalidateLayout没有被触发

时间:2016-06-21 14:49:47

标签: ios swift2 uicollectionview

我有一个包含数据源和布局类的集合视图。该类链接到Attributes Inspector中的集合视图。

通过点击按钮,我需要检索集合的数据,这可能意味着不同数量的部分/项目。因此,我每次都需要重新布局。然而,这似乎永远不会发生。

目前,我在数据检索请求的成功函数中有以下内容。

listingsView.reloadData()
listingsView.collectionViewLayout.invalidateLayout()
listingsView.collectionViewLayout.prepareLayout()

我不确定prepareLayout是否需要,但无论如何都要尝试。数据源更新正常,但prepareLayout永远不会被任何行触发。

我是否需要一些特殊设置或invalidateLayout请求的其他位置?

感谢。

1 个答案:

答案 0 :(得分:2)

抱歉 - 忽略这个。布局上有一个布尔变量,由于强制返回而没有被改变。

只需listingView.collectionViewLayout.invalidateLayout()工作正常。