Прокрутка между разделами в 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];