Я пытаюсь добавить галочки в элементы, когда пользователь выбирает строки в виде таблицы. Однако, мнение не обновляется и галочки не делают никаких Обнаруживаются:Вид аксессуара в UITableView: просмотр не обновляется
- (void)tableView:(UITableView *)tv didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell* oldCell = [self tableView:tv cellForRowAtIndexPath:[NSIndexPath indexPathForRow:selectedIndex inSection:0]];
oldCell.accessoryType = UITableViewCellAccessoryNone;
if (indexPath.section == 0) {
selectedIndex = indexPath.row;
}
UITableViewCell* newCell = [self tableView:tv cellForRowAtIndexPath:indexPath];
newCell.accessoryType = UITableViewCellAccessoryCheckmark;
[tv deselectRowAtIndexPath:indexPath animated:NO];
}
Что может быть причиной этого?
Согласен и из того, что я вижу ВСЕ код в файле didSelectRowAtIndexPath, должен идти, сохраняя deselectRowAtIndexPath. Что произойдет, когда выбрана строка, вызовите [tv reloadData]; и пусть cellForRowAtIndexPath делает все это. – gnasher
Вызов reloadData каждый раз, когда вы проверяете или снимаете флажок, это плохая идея, если вы можете так же легко установить галочку вручную, не воссоздавая каждую видимую ячейку. –
Насколько отличается вызов cellForRowAtIndexPath прямо на телевизоре или то, как я это делал? В любом случае, он решил мою проблему, поэтому спасибо. – Kamchatka