这样做似乎工作得更快:
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
JHomeViewCell *cell = (JHomeViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[JHomeViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:CellIdentifier];
cell.cellContent.thumbnailCache = self.thumbnailCache;
}
Entry *entry = [self.resultsController objectAtIndexPath:indexPath];
if (cell.cellContent.entry != entry) {
[cell.cellContent setNeedsDisplay];
}
}
问题是当一个条目被编辑时,单元格不会改变。我可以检查单元格的所有元素,看看它们是否不同,但有更好的方法吗?每次出现单元格时调用 drawrect 都会减慢应用程序的速度,并且似乎没有必要。