UITableViewCell的创建
表是最常见的视图类型之一,简单说说UITableViewCell的创建
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *SimpleTableIdentifier = @"SimpleTableIndentifier";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:SimpleTableIdentifier];
if (cell == nil) {
cell = [[[UITableViewCellalloc] initWithStyle:UITableViewCellStyleSubtitlereuseIdentifier:SimpleTableIdentifier] autorelease];
}
// design cell
return cell;
}
如果表视图中,表中的每一行都分配一个表视图单元(不管该行是否显示),这将会带来大量开销。
表视图单元的运作原理:
1.当改单元因滚动操作离开屏幕时,它将被放置在一个可重用的单元序列中。
2.当有视图单元滚动到屏幕时,它将从可重用的单元序列中获取并重用这些单元,如果获取不到则新建。
注:
1.系统运行比较慢的时候,将会从可重用单元序列中删除这些单元,以释放存储空间
2.如上代码,SimpleTableIdentifier,这个id是某一种单元的id,而不是某一个单元的id。
3.[tableView dequeueReusableCellWithIdentifier:SimpleTableIdentifier]指的是从序列中找命名为SimpleTableIdentifier的这种单元。