Niestandardowy UITableViewCell z dużym UIImageView powodującym opóźnienie przewijania

Mam niestandardowy UITableViewCell, który składa się z UIImageView i UILabel. Komórka ma rozmiar 320x104px, a imageView zajmuje cały obszar z etykietą z przodu. Jest tylko 8 komórek.

w ViewDidLoad tworzę wszystkie potrzebne obrazy z góry i zapisuję je w słowniku w odpowiednich wymiarach.

Gdy przewijam UITableView, zauważalne jest opóźnienie za każdym razem, gdy napotykamy nową komórkę. Nie ma to dla mnie sensu, ponieważ używany obraz jest już utworzony i buforowany. Pytam tylko o komórkę, aby jej UIImageView renderował obraz.

Używam niestandardowej komórki z jej widokiem w xib i konfigurując mój UITableView, aby używał go z:

[self.tableView registerNib: [UINib nibWithNibName: @ "ActsCell" bundle: nil] forCellReuseIdentifier: myIdentifier];

Tworzenie i konfiguracja komórek:

<code>- (UITableViewCell *)tableView:(UITableView *)tableView 
         cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{  
    NSString* reuseIdentifier = @"ActsCell";
    ActsCell* cell = [tableView dequeueReusableCellWithIdentifier:reuseIdentifier];
    // Configure the cell...
    [self configureCell:cell atIndexPath:indexPath];
    return cell;
}

- (void)configureCell:(ActsCell *)cell atIndexPath:(NSIndexPath *)indexPath 
{
    Act* act = [self.acts objectAtIndex:indexPath.row];
    cell.selectionStyle = UITableViewCellSelectionStyleNone;
    cell.title.text = act.name;
    cell.imageView.image = [self.imageCache objectForKey:act.uid];
}
</code>

Co może powodować opóźnienie? Próba wykonania czegokolwiek Async wydaje się nie przynosić żadnych korzyści, ponieważ wykonywana jest cała czasochłonna praca.

questionAnswers(1)

yourAnswerToTheQuestion