我有一个分组风格的UITableView,旨在显示固定数量的部分,每个部分又有一组固定的单元格,与“设置”应用程序类似。一些单元格是自定义的,它们之间有所不同:其中一些有文本字段,另一个有开关,另一个有按钮。我也有UITableViewCellStyleDefault
个单元格。
从nib
文件加载自定义单元格,并为整个表格视图中的每个单元格定义了strong
属性。我的cellForRowAtIndexPath:
方法如下所示:
- (UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tv dequeueReusableCellWithIdentifier:@"cell"];
if (cell == nil) {
if (indexPath.section == 0) {
if (indexPath.row == 2) {
NSArray* views = [[NSBundle mainBundle] loadNibNamed:@"TypeACell" owner:nil options:nil];
for (UIView *view in views) {
if ([view isKindOfClass:[UITableViewCell class]])
{
cell = (TypeACell *)view;
}
}
// set property
self.typeARow = cell;
}
else {
NSArray* views = [[NSBundle mainBundle] loadNibNamed:@"TypeBCell" owner:nil options:nil];
for (UIView *view in views) {
if ([view isKindOfClass:[UITableViewCell class]])
{
cell = (TypeBCell *)view;
}
}
// set properties
if (indexPath.row == 0) {
self.typeBRow0 = cell;
}
else {
self.typeBRow1 = cell;
}
}
}
else {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"];
// set property
self.defaultCell = cell;
}
}
return cell;
}
对于自定义单元格,我还在其nib
文件中将重用标识符设置为“单元格”。当您事先知道表格的单元格集(例如表单或菜单,如“设置”应用程序)时,这是正确的方法吗?重用标识符对于所有单元格是否相同,或者每个不同的单元格是否具有其唯一标识符?
谢谢!