我有一个名为parentCollectionView
的collectionView,它可以水平滚动。在每个可重用单元格中有一个collectionView,名为childCollectionView
,可以垂直滚动。
我有一个奇怪的问题。当在parentCollectionView上执行I reloadData()
时,单元格将 Flink 几分之一秒,如果向下滚动,它将从顶部加载childCollectionView。最奇怪的是,它只发生在第一次在parentCollectionView上调用reloadData()
时。
在那之后的每一次,都没有 Flink ,也不会强迫你到顶部。当我放弃reloadData()
方法并使用reloadSections/IndexPaths时,它每次都会从顶部加载。
怎么回事?
1条答案
按热度按时间qxsslcnc1#
我没有在
parentCollectionView
上调用reloadData
。相反,我在可见的childCollectionViews
上调用了reloadData
,并将delegate/datasource设置为nil,指向已释放的单元格(在prepareForReuse
中)。通过
reloadData()
重新加载parentCollectionView
似乎是在重新绘制一切。