Пользовательский UITableViewCell с большим UIImageView вызывает задержку прокрутки
У меня есть пользовательский UITableViewCell, который состоит из UIImageView и UILabel. Ячейка размером 320x104 пикселей, и imageView занимает всю область с надписью впереди. Всего 8 ячеек.
в ViewDidLoad я заранее создаю все необходимые изображения и кэширую их в словаре с правильными размерами.
Когда я прокручиваю UITableView, происходит заметная задержка каждый раз, когда встречается новая ячейка. Это не имеет смысла для меня, так как изображение, которое он использует, уже создано и кэшировано. Все, что я спрашиваю о ячейке, это ее UIImageView для визуализации изображения.
Я использую пользовательскую ячейку с ее представлением в xib и настраиваю свой UITableView для использования с:
[self.tableView registerNib: [UINib nibWithNibName: @ "ActsCell" bundle: nil] forCellReuseIdentifier: myIdentifier];
Создание и настройка ячейки:
<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>
Что может быть причиной задержки? Казалось бы, бесполезно пытаться что-то сделать Async, так как вся трудоемкая работа выполнена.