Refreshing a UITableView

cocoa-touch, iphone, objective-c, uitableview

Solution

Have you tried calling `[cell setNeedsDisplay]` but on the main thread?

setNeedsDisplay when called on a background thread does pretty much nothing,

try this:

[cell performSelectorOnMainThread:@selector(setNeedsDisplay) withObject:nil waitUntilDone:NO];

Problem

I have a UITableView subclass and a UITableViewCell subclass that I'm using for cells. I'm bulding all my cells in advance and store them in an array from where I use them in cellForRowAtIndexPath. Aside from this I have a thread that loads some images in each cell, in the background. The problem is that the cells don't get refreshed as fast as the images are loaded. For example, if I don't scroll my table view, the first cells only get refreshed when all cells have been modified and the thread has exited. Any ideas on how I can effectively refresh my tableview/cell?

Original source