在UITableViewCell

时间:2016-12-07 14:24:32

标签: ios iphone swift uitableview

我正在使用Swift 2.3开发一个iOS应用程序。我的View控制器(ABC)包含UITableView,所有数据都将在控制器级别绑定。我准备了自定义Tableview Cell,其中包含水平滚动动态图像的集合视图。准备完所有数据后,我将从ViewController重新加载集合视图以绑定图像。使用SDWebCahche图像库从服务器下载所有图像。如果慢慢滚动,一切正常。我尝试快速滚动时提出了我的问题。下面我在控制台中只看到一次崩溃。

libc++abi.dylib: terminating with uncaught exception of type NSException

还可以在崩溃后查看附加图像线程状态。

enter image description here

enter image description here

先谢谢。

1 个答案:

答案 0 :(得分:5)

我通过在Custom UITableViewCell中添加以下代码解决了这个问题。

我添加了UITableviewcell方法" prepareForReuse"。在这个方法中,我已经清除了所有与CollectionView相关的数据并重新加载了集合视图。

例如

override func prepareForReuse {
  arrImges.removeAll()
  collectionView.reloadData()
}

因为我注意到当我的UITableViewCell启动deque时会调用此方法。因此,在My Controller中准备数据新数据时,我的所有collectiobView数据都将被清除,新数据将被重新加载。