当前位置:  开发笔记 > 编程语言 > 正文

Tableview首先重用单元格并显示错误数据

如何解决《Tableview首先重用单元格并显示错误数据》经验,为你挑选了1个好方法。



1> vacawama..:

问题是您正在看到前一个单元格中的图像.只需在nil将重用的单元格出列时将图像初始化为:

cell.photoImageView.image = nil

或将其设置为您选择的默认图像.


请注意,加载后更新图像的方式存在问题.

    当图像最终加载时,该行可能不再在屏幕上,因此您将更新已经重用的单元格.

    更新应该在主线程上完成.

更好的方法是使用一个缓存单元格图像的数组.将图像加载到数组中,然后告诉tableView重新加载该行.

像这样的东西:

dispatch_async(dispatch_get_main_queue()) {
    self.imageCache[row] = ass
    self.tableView.reloadRowsAtIndexPaths([NSIndexPath(forRow: row, inSection: 0)],
        withRowAnimation: .None)
}

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有