0

我有一个带有表格视图的视图,以编程方式创建(没有关联的 XIB)。我希望某些单元格具有浅灰色背景色。所以我尝试了这个:

cell.contentView.backgroundColor = [UIColor colorWithRed:(230/255.f) green:(230/255.f) blue:(230/255.f) alpha:1.0];

但是结果如下(问题当然是单元格的背景应该是完全灰色的):

在此处输入图像描述

我也试过这个,结果和以前一样:

UIView *cell_view = [[UIView alloc] init];
[cell_view setBackgroundColor:[UIColor colorWithRed:(230/255.f) green:(230/255.f) blue:(230/255.f) alpha:1.0]];
[cell setBackgroundView:cell_view];

似乎没有任何效果。谢谢你的帮助。

4

6 回答 6

1

将 tableviews 背景颜色设置为清除颜色。

 tableView.backgroundColor = [UIColor clearColor];
于 2013-06-05T12:37:11.320 回答
1

执行以下操作:

  1. 将 tableview 背景颜色设置为清除颜色。
  2. 将 cell.backgroundview 设置为 nil。
  3. 将 cell.backgroundcolor 设置为灰色。
于 2013-06-05T12:39:40.207 回答
0

不要给背景颜色。而是创建具有所需颜色的视图。并设置为背景视图。

于 2013-06-05T12:34:15.633 回答
0

覆盖tableView:willDisplayCell:forRowAtIndexPath:委托:

-(void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
    [cell setBackgroundColor:[UIColor colorWithRed:(230/255.f) green:(230/255.f) blue:(230/255.f) alpha:1.0]];
}

另外,将 textLabel 背景颜色设置为透明

cell.textLabel.backgroundColor = [UIColor clearColor];
于 2013-06-05T12:36:31.333 回答
0

尝试这个:

//set this in viewDidLoad method
yourTable.backgroundColor = [UIColor clearColor];

//set this in cellForRowAtIndexPath method of UITableView
cell.backgroundview = nil;
cell.backgroundColor = [UIColor greenColor];
于 2013-06-05T13:04:08.297 回答
0

这段代码对我有用。

请尝试以下代码:

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

UIColor *CellColor = [UIColor colorWithRed:(230/255.f) green:(230/255.f) blue:(230/255.f) alpha:1.0];
cell.backgroundColor = CellColor;

}

于 2013-06-05T13:09:28.883 回答