Ios 更改UITableView的单元格颜色

Ios 更改UITableView的单元格颜色,ios,uitableview,Ios,Uitableview,我正在尝试更改填充UITableView单元格的单元格的颜色;但它仍然是黑色的细胞 -(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath { if (tofriend) { if (indexPath.section==0){ static NSString *CellIdentifier; CellId

我正在尝试更改填充UITableView单元格的单元格的颜色;但它仍然是黑色的细胞

 -(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath {

if (tofriend) {

    if (indexPath.section==0){


        static NSString *CellIdentifier;
        CellIdentifier= @"MyCell";


        MyCell *cell =(MytCell*) [tableView dequeueReusableCellWithIdentifier:CellIdentifier];


        if (!cell) {
            [[NSBundle mainBundle] loadNibNamed:@"MyCell" owner:self options:nil];                 cell = myCell;


        }
        cell.backgroundColor=[UIColor blueColor];
好的,我知道了
它是cell.contentView.backgroundColor。

看起来您试图从nib加载单元格,但实际上从未将nib设置为
MyCell

尝试更改为:

   if (!cell) {
       cell = [[[NSBundle mainBundle] loadNibNamed:@"MyCell" owner:self options:nil] objectAtIndex:0];
   }

假设您的单元格正在加载,并且只有背景颜色没有改变,我认为自定义单元格MyCell中的其他元素正在覆盖单元格背景视图

尝试将单元格中所有其他元素的背景色设置为红色/黄色,然后查看是否存在任何单元格背景可见


顺便说一句:为什么不在自定义单元格中设置背景色?

由于单元格缓存,您应该在委托方法中更改背景色:

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

cell.backgroundColor将在此方法中正确显示。

无法,cell=因为捆绑包和nib输出的是NSArray而不是cell。我的代码有效。不用担心,我可以将自定义单元格加载到表中。我只想知道如何更改tableview的行颜色。请注意,我在末尾添加了
objectAtIndex:0
。这将加载笔尖中的第一个视图。您认为它不起作用是什么意思?您是否尝试将标签内的其他视图设置为“清除颜色”或其他颜色(红色/黄色,因为它与蓝色形成对比)?是否有可能卸载单元缓存?重新加载不会清除单元格缓存。