如何填充UITableViewCell的背景颜色?

时间:2010-02-22 02:23:22

标签: iphone uitableview

如何填充UITableViewCell的背景颜色?我尝试了这段代码,但它没有用。

cell.backgroundColor = [UIColor redColor];

3 个答案:

答案 0 :(得分:2)

尝试为UITableViewCell设置backgroundView:

UIView *bgView = [[UIView alloc] init];
bgView.backgroundColor = [UIColor redColor];
cell.backgroundView = bgView;
// release object
[bgView release];

您可以同样的方式更改UITableViewCell的选择背景视图。

cell.selectedBackgroundView = bgView;

答案 1 :(得分:1)

通过UITableViewCell的{​​{1}}属性设置背景颜色仅适用于 Grouped 表视图。因此,如果您的表视图采用 Plain 样式,那么它将无效。

您当然可以设置backgroundColor的{​​{1}}的背景颜色。但是你可能还需要做一些额外的工作,因为其他子视图(文本标签和附件视图)对背景颜色有自己的想法。

答案 2 :(得分:1)

请查看UITableViewCell文档中的以下代码段。

http://developer.apple.com/library/ios/#documentation/uikit/reference/UITableViewCell_Class/Reference/Reference.html

  

注意:如果要更改单元格的背景颜色(通过UIView声明的backgroundColor属性设置单元格的背景颜色),则必须在tableView中执行此操作:willDisplayCell:forRowAtIndexPath:委托方法和不在tableView:cellForRowAtIndexPath:数据源。组样式表视图中单元格背景颜色的更改在iOS 3.0中具有与以前版本的操作系统不同的效果。它现在影响圆角矩形内的区域而不是它外面的区域。

这应该可以解决你的问题。