2015-05-22 4 views
0

У меня есть UITableView, заполненный материалом из базы данных.Изменить конкретный цвет фона UICELL

Теперь я хочу изменить цвет фона только одной ячейки, той, которая установлена ​​«активный элемент».

Как найти ячейку с (как пример) name = "Active Cell" и изменить цвет фона только этой ячейки.

Надеюсь, вы, ребята, понимаете, не знаете, как это объяснить.

+0

Откуда вы знаете, что активна ячейка или нет? есть ли какие-либо данные, связанные с ячейкой или ее основанные на событиях сотовой связи? – Retro

+0

Вы имеете в виду, меняя ячейку фона на выбор ячейки? – Sujay

ответ

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];, когда изменяется активный элемент.

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 
+0

cell.backgroundColor = [UIColor redColor]; – aBilal17

Смежные вопросы