Ios 在界面生成器中更改UITableViewCell背景色

Ios 在界面生成器中更改UITableViewCell背景色,ios,uitableview,Ios,Uitableview,我试图避免在我的iOS项目中添加任何与可视化设置有关的代码,因为Interface Builder应该为您简化这些代码 所以我尝试在IB中设置原型单元,然后调用: TableCell *cell = [self.tableView dequeueReusableCellWithIdentifier:@"TableCell"]; 问题是,如果我更改IB中单元格的背景色,则在运行应用程序时,它将保持白色。我可以很好地预设标签的颜色,但不能在表格单元格中预设背景色属性 作为补充说明,我可以看到,在中

我试图避免在我的iOS项目中添加任何与可视化设置有关的代码,因为Interface Builder应该为您简化这些代码

所以我尝试在IB中设置原型单元,然后调用:

TableCell *cell = [self.tableView dequeueReusableCellWithIdentifier:@"TableCell"];
问题是,如果我更改IB中单元格的背景色,则在运行应用程序时,它将保持白色。我可以很好地预设标签的颜色,但不能在表格单元格中预设背景色属性

作为补充说明,我可以看到,在中断变量并在初始化变量后检查变量之后,作为单元内背景视图的UIView为null

更新
我的印象是IB中的背景色选项基本上是无用的?我宁愿不相信那件事。

不幸的是,你不能那样做

更改
tableView:willDisplayCell:forRowAtIndexPath:

UITableViewCell
的文档中:

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


不幸的是,你不能这样做

更改
tableView:willDisplayCell:forRowAtIndexPath:

UITableViewCell
的文档中:

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


在interface builder中,添加一个视图作为单元的子视图,该子视图将是您的背景视图。然后可以将所有标签或任何其他内容作为子视图添加到该视图中。根据需要更改视图背景颜色。

在interface builder中,添加一个视图作为单元格的子视图,该视图将成为您的背景视图。然后可以将所有标签或任何其他内容作为子视图添加到该视图中。根据需要更改视图背景颜色。

我认为这可能是IB中的一个错误。您可以将视图添加到控制器底部的该栏中,然后将这些视图连接到背景视图和单元格的selectedBackgroundView属性。但是,backgroundView的颜色不起作用,而selectedBackgroundView的颜色确实起作用。如果在代码中将背景视图添加到自定义表视图单元格中,并为其提供背景色,则该操作确实有效

我认为这可能是IB中的一个错误。您可以将视图添加到控制器底部的该栏中,然后将这些视图连接到backgroundView和单元格的selectedBackgroundView属性。但是,backgroundView的颜色不起作用,而selectedBackgroundView的颜色确实起作用。如果在代码中将背景视图添加到自定义表视图单元格中,并为其提供背景色,则该操作确实有效

如果基本上没有用,为什么选项在IB中可用?这也是我一直在问自己的问题…无论如何检查编辑过的答案。如果基本上没有用,为什么选项在IB中可用?这也是我一直在问自己的问题…无论如何检查编辑过的答案。但是一个表单元格已经有了一个子视图,该子视图就是它的子视图背景。我无法想象这种变通是最好的选择。你知道为什么IB不让我将uiview作为子视图添加到tablecell中吗?但是table cell已经有了一个子视图作为它的背景。我无法想象这种变通是最好的选择。你知道为什么IB不让我将uiview作为子视图添加到tablecell中吗?