使用collectionView.reloadData后,前一个单元格仍然存在?

时间:2017-01-22 00:54:07

标签: ios swift cocoa-touch uicollectionview reload

我在方法

中拥有所有视图样式
override func viewWillAppear(_ animated: Bool) {
    displayDataForIndexPath()
}

当我需要在ViewController中重新加载数据时,会调用哪个。我的ViewControllerCollectionView我需要刷新。

我已将collectionview.reloadData()添加到我的displayDataForIndexPath()方法中。然而,所有先前的单元格保留,而不是消失,因此新单元格堆叠在旧单元格之上。删除那些旧单元格的正确方法是什么,以便CollectionView正确重新加载?

1 个答案:

答案 0 :(得分:0)

您不需要删除数据源

在您的cellForItemAtIndexPath中

,您不应该向单元格添加更多控件。它应该只在创建细胞时进行一次。

正如名称所示,当你正常获取你的单元格时:reuse这意味着它会从它在集合中显示的最后一个状态重新使用。