I'm creating custom UITableViewCells using the approach outlined on this page:
http://icodeblog.com/2009/05/24/custom-uitableviewcell-using-interface-builder/
So my cellForRowAtIndexPath code looks a bit like this:
static NSString *CellIdentifier = @"CustomCell";
TableCellWithLogo *cell = (TableCellWithLogo *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
NSArray *nibObjects = [[NSBundle mainBundle] loadNibNamed:@"TableCells" owner:nil options:nil];
for (id currentObject in nibObjects)
{
if ([currentObject isKindOfClass:[TableCellWithLogo class]] )
{
cell = (TableCellWithLogo *)currentObject;
}
}
}
cell.customTextLabel.text = [tableArray objectAtIndex:indexPath.row];
return cell;
Now, the table I'm creating looks like a stylized version of the grouped tableview style, with drop-shadows etc. So it needs four possible styles of table (top, center, bottom .. and top+bottom for when only a single cell is showing).
I'm having trouble working out how to put all of these table cells into one nib, and then refer to them. At the moment I have a nib with a UITableViewCell whose class is 'TableCellWithLogo'. This class has all the relevant IBOutlets. If I put several UITableViewCells in the nib (all of TableCellWithLogo class), how would I be able to differentiate between them in code? You can see in the example above I'm finding out the class:
if ([currentObject isKindOfClass:[TableCellWithLogo class]] )
..but all the classes would be the same, so I'm not sure how to differentiate?