- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *reuseIdentifier = @"cellReuse";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:reuseIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:reuseIdentifier];
}
NSManagedObject *manageObject = [self.fetchResultController objectAtIndexPath:indexPath];
cell.textLabel.text = [manageObject valueForKey:@"title"];
cell.detailTextLabel.text = [manageObject valueForKey:@"subtitle"];
return cell;
}
我从一本书上读到,单元格是一种“可重用视图”。我对“可重用”的理解有些问题。
谁能简单地解释一下细胞的机制?
问题是:表视图可能有数千行(或数百万行,无论如何)。为每个数据行创建单独的单元格既乏味又浪费。相反,表视图仅要求屏幕上同时显示的行数(通常不超过 10-15-20 个单元格)。这是易于管理的,不会消耗大量内存,并且与并非所有行都在显示屏上可见的事实相得益彰。
因此,当表视图需要显示一个新单元格时(因为用户滚动了视图),它会取出一个超出可见区域的单元格,并将其排回到末尾,重新使用它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)