从“开始iOS 6开发”一书,第8章,第227页。
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *SimpleTableIdentifier =
@"SimpleTableIdentifier"; //why this string instance is
// static and what its purpose?
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:
SimpleTableIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc]
initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:SimpleTableIdentifier];
}
cell.textLabel.text = self.dwarves[indexPath.row];
return cell;
}
“此字符串将用作表示表格单元格类型的键。”
这个实例的目的是什么? 2.为什么它是静态的? 3.本书中使用的术语是“实例”。在这种情况下,术语“实例”和“变量”是否可以互换?
答案 0 :(得分:4)
它是静态的,所以它只会在我们第一次调用tableView:cellForRowAtIndexPath:
时设置。对此方法的后续调用不必创建新的局部变量并且每次都设置它,因为它始终是相同的。