как редактировать свойство UITableViewCell по другому методу - PullRequest
1 голос
/ 26 января 2010

я знаю, что это будет настройка ячейки по этому методу

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

например, если я хочу отредактировать свойство ячейки в

tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

как я могу получить доступ к выбранной ячейке?

1 Ответ

2 голосов
/ 26 января 2010

Вы можете получить видимую ячейку в UITableView, используя следующий метод:

-(UITableViewCell *)cellForRowAtIndexPath:(NSIndexPath *)indexPath

Возвращаемое значение: Объект, представляющий ячейка таблицы или ноль, если ячейка не виден или indexPath находится вне диапазон.

Так что в вашем методе didSelectRow у вас будет что-то вроде (вам может понадобиться установить для selectionStyle ячейки значение UITableViewCellSelectionStyleNone, чтобы ваши изменения отображались правильно):

- tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell* cell = [tableView cellForRowAtIndexPath:indexPath];
    if (cell != nil){
        cell.textLabel.textColor = [UIColor redColor];
    }
}

Или вы можете создать подкласс UITableViewCell, реализовать метод - (void)setSelected:(BOOL)selected animated:(BOOL)animated и изменить там свойства ячейки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...