iPhone: Cell imageViews repeating when loaded from url
- by araid
I'm developing a demo RSS reader for iPhone. I obviously have a tableview to display the feeds, and then a detailed view. Some of this feeds have a thumbnail that I want to display on cell.imageview of the table, and some don't.
The problem is that when scrolling the table, loaded thumbnails start repeating on other cells, and I end up with a thumbnail on every cell.
Here's a piece of my code. I may upload screenshots later
   - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
        UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier: @"rssItemCell"];
        if(nil == cell){
            cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"rssItemCell"]autorelease];
        }
        BlogRss *item = [[[self rssParser]rssItems]objectAtIndex:indexPath.row];
        cell.textLabel.text = [item title];
        cell.detailTextLabel.text = [item description];
        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
        // Thumbnail if exists
        if(noticia.imagePath != nil){
            NSData* imageData;
            @try {
                imageData = [[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:item.imagePath]];
            }
            @catch (NSException * e) {
                //Some error while downloading data
            }
            @finally {
                item.image = [[UIImage alloc] initWithData:imageData];
                [imageData release];
            }
        }
        if(item.image != nil){
            [[cell imageView] setImage:item.image];
        }
        return cell;
    }
Any help will be very appreciated.