ios 6 UITableViewCell删除按钮具有背景颜色

时间:2013-05-01 09:11:16

标签: ios objective-c uitableview

我有自定义UITableViewCell背景图案

使用此方法

- (void)tableView:(UITableView *)tableView willDisplayCell:(homeCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{

    cell.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]];
}

结果很好,

ImageLink:link

但是当我滑动删除时,删除按钮会带有覆盖单元格内容的背景颜色

ImageLink:link

我按照我在stackoverflow中找到的一些解决方案,但没有解决我的问题

我已尝试使用此代码清除删除按钮的背景颜色

- (void)tableView:(UITableView *)tableView willDisplayCell:(homeCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{

    // create uiview
    UIView* myBackgroundView            = [[UIView alloc] initWithFrame:CGRectZero];
    myBackgroundView.backgroundColor    = [UIColor clearColor];

    // assign the uiview
    cell.editingAccessoryView   = myBackgroundView;
    cell.backgroundView         = myBackgroundView;

    // my background patter
    cell.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"CellBG.png"]];
}

但结果并不好,整个细胞背景没有背景颜色

ImageLink:link

如何显示没有背景颜色的删除按钮?请帮忙


我试过的一些解决方案: link 1

link 2

link 3

1 个答案:

答案 0 :(得分:1)

问题不在于删除按钮背景,问题是当显示删除按钮时,您的UITableViewCell内容视图大小会减小。通过添加IB中的标签,它们将被添加到contentView。

我在其他项目中做了什么(我没有使用autolayout)我设置弹簧和支柱,以便在重新调整UITableView单元格时重新调整标签大小。