deselectRowAtIndexPath не вызывается - PullRequest
       2

deselectRowAtIndexPath не вызывается

0 голосов
/ 02 декабря 2011

У меня есть UITableview в поповере. Я не могу добиться отмены выбора, чтобы оживить или работать вообще. Флажок остается в предыдущей выбранной строке (этот флажок установлен в моем классе Model, который является просто NSDictionary, где одно значение равно @ "YES", а все остальные значения - @ "NO". Когда я закрываю поповер и снова откройте его, галочка верна, но я не могу получить его, пока открыт поповер. Мысли? Спасибо.

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
     NSUInteger row = [indexPath row];
        UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
        cell.selectionStyle = UITableViewCellSelectionStyleNone;
        cell.accessoryType = UITableViewCellAccessoryCheckmark;
//        [cell setSelected:YES animated:YES];   
        [tableView deselectRowAtIndexPath:indexPath animated:YES];
}

1 Ответ

1 голос
/ 02 декабря 2011

deselectRowAtIndexPath не удаляет вспомогательный вид UITableViewCell, он удаляет выделенный (синий) фон UITableViewCell.Следующий код устанавливает флажок ячейки:

cell.accessoryType = UITableViewCellAccessoryCheckmark;

Чтобы удалить флажок из этой ячейки, необходимо сделать:

cell.accessoryType = UITableViewCellAccessoryNone;

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