我有一个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相关的内容。我也搜索过堆叠溢出,但我找不到与我所面临的问题相匹配的任何东西。
我怎么才能解决这个问题?
发布于 2014-06-04 23:21:04
这个问题是由彩色物体引起的。正确的一行是:
cell.editingAccessoryView.backgroundColor = [UIColor colorWithRed:244/255.0f green:240/255.0f blue:246/255.0f alpha:1.0];我最好的猜测是,如果没有.0f,它就会将数字作为it来处理,并将所有的值截断为0(这将使我变成黑色)。
发布于 2014-04-01 12:01:27
在iOS 7中,默认情况下单元格具有白色背景;在早期版本的iOS中,单元格继承包围表视图的背景色。如果要更改单元格的背景色,请在tableView:willDisplayCell:forRowAtIndexPath:表视图委托的方法中这样做。
我希望这对你有帮助
发布于 2013-10-16 15:13:45
您需要设置backgroundView属性的UITableViewCell,您不能简单地更改editingAccessoryView,正如您可能已经看到的那样。相反,你可以做如下的事情:
UIView *aBackgroundView = [[[UIView alloc] initWithFrame:CGRectZero] autorelease];
aBackgroundView.backgroundColor = [UIColor yourColor];
yourCell.backgroundView = aBackgroundView;或在
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath使用:
cell.contentView.superview.backgroundColor = [UIColor redColor];https://stackoverflow.com/questions/19406149
复制相似问题