我正在关注这种折磨:
http://www.raywenderlich.com/32283/core-graphics-tutorial-lines-rectangles-and-gradients
它涵盖了动态表格单元格的定制,我需要使用静态表格单元格来完成。
正如他在教程中所做的那样,我为每个单元格赋予了标识符“Cell”,然后我将表视图控制器子类化并实现了这个:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString * CellIdentifier = @"Cell";
UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
// START NEW
if (![cell.backgroundView isKindOfClass:[CostumCellBackground class]]) {
cell.backgroundView = [[CostumCellBackground alloc] init];
}
if (![cell.selectedBackgroundView isKindOfClass:[CostumCellBackground class]]) {
cell.selectedBackgroundView = [[CostumCellBackground alloc] init];
}
// END NEW
cell.textLabel.backgroundColor = [UIColor clearColor]; // NEW
return cell;
}
CostumCellBackground 绘制矩形。
我收到错误“UITableView 数据源必须从 tableView 返回一个单元格:cellForRowAtIndexPath:
据我了解 UITableView 是为情节提要中的每个单元格循环的,它应该返回单元格。
那么,这里发生了什么,为什么单元格返回 nil,或者根本不返回?
唯一的区别是它们是静态表,而不是原型。