【发布时间】:2013-10-16 14:30:03
【问题描述】:
我有一个 UITableView,我已将单元格背景颜色设置为 RGB 244、240、246。我通过在表格、表格单元格和表格单元格中的内容视图上设置背景颜色来完成此操作。
但是,配件(在本例中为复选标记)具有黑色背景。
当我在表格上启用编辑时,左侧的删除圆圈也有黑色背景。
我似乎无法更改此背景颜色。
我已经尝试使用以下代码:
cell.editingAccessoryView = [[UIView alloc] init];
cell.editingAccessoryView.backgroundColor = [UIColor colorWithRed:244/255 green:240/255 blue:246/255 alpha:1.0];
但它没有效果。
我尝试在情节提要中寻找设置,但似乎没有任何区别。
我确实注意到,如果我将表格单元格和内容视图背景颜色更改为“默认”,整个单元格背景将变为黑色(即使表格背景颜色仍然是我的自定义颜色)。
我浏览了 iOS7 转换指南,但没有看到任何与 UIAccessoryView 相关的内容。我也通过 stackoverflow 进行了搜索,但找不到与我遇到的问题匹配的任何内容。
我该如何解决这个问题?
【问题讨论】:
-
我认为您需要使用 [iOS 7 中的不同方法][1] [1] 更改背景颜色:stackoverflow.com/questions/18878258/…
-
我可以将单元格背景颜色更改为我想要的任何颜色,并且效果很好。我没有在代码中执行此操作,而是通过表格单元格中的内容视图执行此操作,作为该问题的建议答案之一。我无法更改的是附件视图背景颜色。
-
附件视图不在单元格的 contentView 内,这就是为什么我建议更改整个单元格的背景。
-
我也在故事板中将单元格背景设置为我的自定义颜色(不仅仅是单元格中的内容视图)。但是,我只是将它添加到我的 cellForRowAtIndexPath 方法(cell.backgroundColor)中,我仍然在附件视图中获得黑色背景。
-
我遇到了基本相同的问题(但我的附件是自定义视图,而不是系统类型),并且默认的白色背景显示在 iOS7 上。 RyanR 的第一条评论对我来说非常有效,即转到另一个 SO 问题并查看关于 tableView:willDisplayCell:forRowAtIndexPath: 的公认答案。这解决了我的问题,也可能解决你的问题。
标签: ios uitableview uiaccessoryview