在编辑表中更改红色按钮的颜色

时间:2016-04-08 13:51:56

标签: objective-c uitableview

我搜索了很多,但我只找到了如何更改删除按钮。我需要改变的是小圆形按钮的颜色。这可能吗?

enter image description here

1 个答案:

答案 0 :(得分:1)

红色按钮不是按钮。这是一张图片。

您需要在UITableViewCell中找到子视图,当子视图为UITableViewCellEditControl时,您将视图转换为图像视图,然后更改其中的图像。

您需要有一张类似于红色图像的自定义彩色图像。

for (UIView *subv in cell.subviews){
    if ([NSStringFromClass([subv class]) isEqualToString:@"UITableViewCellEditControl"]) {

                for (UIView *imgV in subv.subviews){ {

                  if(imgV isKindOfClass:[UIImageView class]]){
                    UIImageView *imgView = (UIImageView *)imgV;
                    imgView.image=[UIImage imageNamed:@"blue.png"];
                    imgV.backgroundColor=[UIColor blueColor];
                     NSLog(@"subview-subview  name is %@",NSStringFromClass([imgV class]));
                }

                }

            }
}

enter image description here

请注意,更改私人子视图不是一个好习惯。此方法可能无法在@rmaddy的下一个iOS更新中使用。

另一种解决方法是设计自己的自定义单元格。