设置UITableViewCell的删除控件的背景颜色

时间:2011-06-01 21:36:12

标签: iphone uitableview

在iPhone / iPad应用程序中,我使用UITableView显示可以编辑的项目列表。我可以成功地在表视图中交替行的背景颜色。但是,当我打开“编辑模式”(即显示删除控件)时,每个单元格似乎都向右移动,删除控件从左侧滑入。

我的问题是删除控件有白色背景颜色。我希望删除控件的背景颜色与我的UITableViewCell的背景颜色相匹配。

我如何做到这一点?

3 个答案:

答案 0 :(得分:5)

一个答案是,在getCellContentView函数中,您创建框架/标签并将其添加为子视图,添加一个更宽的附加标签,并以负X值开头。然后,这可以着色。由于它是在删除控件的“下方”绘制的,因此颜色显示为。

诀窍是要理解删除控件不是在任何地方绘制“白色”。删除控件本身的背景颜色已经清除,所以你必须在下面放置一些东西。负“x”值就可以了。

答案 1 :(得分:1)

尝试将包含删除按钮的accessoryView的背景设置为UIColor clearColor。我不确定确切的语法,但是类似于:

[tableView.editingAccessoryView setBackgroundColor:[UIColor clearColor]];

如果这样做不适合您,您可以尝试将整个tableview的背景设置为清除。这不应该影响每个单元格的自定义颜色。

答案 2 :(得分:-1)

试试这个,它必须有所帮助:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
    cell.backgroundColor = [UIColor clearColor];
}