延迟加载图像到表视图部分重复

时间:2014-03-25 15:10:17

标签: ios objective-c tableview

我使用SDWebImage将图片延迟加载到我的tableView

使用以下核心我在cellForRowAtIndexPath方法中设置我的单元格:

    if (indexPath.section == 0)
        cell.textLabel.text = [NSString stringWithFormat:@"%@",[self getDataFromArrayOfDict:theDataObject.arrayOfTextData][indexPath.row]];

    if (indexPath.section == 1)
        cell.textLabel.text = [NSString stringWithFormat:@"%@",[self getDataFromArrayOfDict:theDataObject.arrayOfOtherData][indexPath.row]];

    if (indexPath.section == 2)
        [cell.imageView setImageWithURL:[NSURL URLWithString:[self getDataFromArrayOfDict:theDataObject.arrayOfPictureData][indexPath.row]]  placeholderImage:[UIImage imageNamed:@"Placeholder"]];

但结果是下一个:

初始加载时:

enter image description here

滚动后

enter image description here

正如你可以看到它混合了我设置的数据(我只有第一部分的文字,只有第三部分的图像),任何想法为什么?

1 个答案:

答案 0 :(得分:0)

根据屏幕截图,您的单元格在第0部分中出列并重复。

您需要为每个cellForRowAtIndexPath调用设置cell.imageView.image = nil;,以便在分配新图像之前清除重用的单元格图像。