Цель C: Как выделить первую ячейку в табличном представлении при загрузке представления? - PullRequest
1 голос
/ 19 мая 2011

Я пытаюсь по умолчанию подсвечивать верхнюю ячейку в моем табличном представлении при каждом появлении подпредставления.

Я пытался сделать это:

switch(indexPath.row) { // assuming there is only one section
    case 0:
      cell.textLabel.text = @"First Cell:";
      cell.highlighted = YES
      break;

Но это не работаетвместо этого я получаю чёрный оверлей на своей первой ячейке.

РЕДАКТИРОВАТЬ (добавлен скриншот)

enter image description here

Любые советы по этому вопросу будут высоко оценены!

Спасибо

Жен

Ответы [ 2 ]

4 голосов
/ 19 августа 2012

У меня была точно такая же проблема.Вам нужно переместить свой код в willDisplayCell вместо cellForRowAtIndexPath.

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

    if(indexPath.row == 0) {

        [cell setSelected:YES animated:NO];
    }
}
3 голосов
/ 19 мая 2011

Я думаю, что вам нужно,

cell.selected = YES;

Если вы хотите анимировать, вы можете использовать,

[cell setSelected:YES animated:YES];
...