UITableView两种用法的详解

1.tableView: cellForRowAtIndexPath:方法中有两个获得重用cell的方法:

①UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

②UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath]

2.两种用法(请问他们有什么区别)

第一种方法(iOS6之前使用)

NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if (cell == nil) {

cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];

//设置你的cell

}

第二种方法(iOS6之后使用)

NSString *CellIdentifier = @"Cell";

③[tableViewregisterClass:[UITableViewCellclass]forCellWithReuseIdentifier:CellIdentifier];

④[tableViewregisterNib:[UINibnibWithNibName:@"xib名字"bundle:nil]forCellReuseIdentifier:CellIdentifier];

③和④选择一个方法执行,如果没有xib用③,否则用④,在viewDidLoad中写。

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

如有不同观点,请指教

你可能感兴趣的:(UITableView两种用法的详解)