Медленная загрузка для подсветки изображения в виде таблицы - PullRequest
0 голосов
/ 26 июля 2011

У меня есть таблица, заполненная ячейками табличного вида, у которых в качестве цвета подсветки используется изображение.

Иногда, когда я нажимаю на ячейку, изображение загружается с задержкой. Мне было интересно, как уменьшить лаг?

У меня есть следующее:

cell.selectedBackgroundView = [DataSingleton sharedMySingleton].highlightView;

внутри метода:

-(void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{

Примечание. Я звоню на синглтон каждый раз, когда нажимаю на него. Я попытаюсь установить изображение локально, чтобы увидеть, если это изменит

РЕДАКТИРОВАТЬ: Итак, я установил viewview локально в viewDidLoad, и, похоже, он реагирует намного быстрее. Я предполагаю, что моя проблема - это синглтон, но я хочу иметь возможность изменить все выделенные изображения одновременно. Есть ли способ иметь глобальную переменную, которая будет загружаться быстро?

1 Ответ

1 голос
/ 26 июля 2011

Я не очень уверен, но ниже может помочь в производительности.

Вместо написания кода в методе willDisplayCell. Вы можете написать в методе cellForRowIndexPath.

как то так

static NSString *CellIdentifier = [NSString stringWithFormat:@"MyIdentifier%d",indexpath.row];

UITableViewCell *cell = [tv dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];

 cell.selectedBackgroundView = [DataSingleton sharedMySingleton].highlightView;
}

Идея устанавливается selectedbackgroundView только один раз, когда вы выделяете память для этой ячейки. Для этого вам нужно использовать reuseidentifier.

Надеюсь, что это поможет.

...