更改特定的UICell backgroundcolor

时间:2015-05-22 12:20:29

标签: ios objective-c uitableview uibackgroundcolor

我有一个UITableView来自数据库的东西。

现在我想要更改一个单元格的背景颜色,即设置的活动项目'。

如何找到具有(例如)name =" Active Cell"并仅更改该单元格的背景颜色。

希望你们明白,不知道如何解释它。

2 个答案:

答案 0 :(得分:1)

如果您知道在加载/重新加载表时哪个是活动项,您可以使用...

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (!cell)
    {
        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];

       // permanent cell styling in here.

   }

    // non-permanent cell styling in here.

    // example
    MYCustomDataObject *object = [myDataArray objectAtIndex:indexPath.row]; 

    cell.textlabel.text = object.text;

    BOOL isActive = [object.text isEqualToString:@"Active Cell"];
    cell.backgroundColor = isActive ? [UIColor redColor]:[UIColor clearColor];

    return cell;
}

如果您需要在其他时间访问它...说您只是设置了一个新的有效项目......当活动项目也发生变化时,您应该致电[myTableView reloadData];

答案 1 :(得分:0)

以下示例代码;

UITableViewCell *cell = [self.tblView cellForRowAtIndex:index];//desired cell index and this could be get whenever you have data
cell.backgroundColor = [UIColor blackColor];//desired color