Прокрутка между разделами в UITableView с выделенными ячейками

У меня есть UITableView с двумя разделами, и у меня есть кнопка, которая изменяет представление таблицы на режим редактирования, но редактируется только нижняя часть.

Когда я выбираю строки и прокручиваю только в нижней части (которая находится в режиме редактирования), строки сохраняют выбор. Но если я прокручиваю вверх до тех пор, пока нижняя часть не будет скрыта, и вернусь обратно к нижней части, выбор будет очищен.

Прокрутка между разделами очищает выбор.

Почему это происходит? Как это можно исправить?

1 ответ

Так что просто для потомков. В общем, даже если ячейки табличного представления относятся к одному и тому же классу, если они ведут себя по-разному, когда речь идет о таких вещах, как editabilty, часто лучше иметь две отдельные строки CellIdentifier, чтобы избежать большого переключения между состояниями.

Может быть так просто, как

static NSString *CellIdentifier = @"Cell";
static NSString *CellIdentifier2 = @"Cell2";


NSString *identifierString = indexPath.section == 0 ? CellIdentifier:CellIdentifier2;

MYTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifierString];

if (!cell)
    cell = [[MYTableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifierString];
Другие вопросы по тегам