我正在尝试在简单样式的UITableView中更改自定义UITableViewCell
的背景颜色。
我已经阅读了其他类似的问题,我在我的委托方法中:
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
我设置cell.backgroundColor = [UIColor...]
。问题是这仅适用于分组样式UITableView
。
注意:我想以编程方式而不是在我的.xib文件中执行此操作的原因是因为我需要不同单元格的不同背景颜色。
答案 0 :(得分:8)
也许您可以在设置颜色之前添加cell.contentView.backgroundColor = [UIColor clearColor]
。
原因是backgroundview位于底部。内容视图位于顶部。
答案 1 :(得分:1)
更改以下委托方法中的颜色:
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
if (...){
cell.backgroundColor = [UIColor blueColor];
} else {
cell.backgroundColor = [UIColor whiteColor];
}
}
答案 2 :(得分:0)
// set selection color
UIView *myBackView = [[UIView alloc] initWithFrame:cell.frame];
myBackView.backgroundColor = [UIColor colorWithRed:1 green:1 blue:0.75 alpha:1];
[cell.contentView addSubview:myBackView];
[myBackView release];
像这样根据需要更改每个单元格