Ячейки таблицы удаляются неправильно - PullRequest
0 голосов
/ 27 октября 2010

У меня есть приложение, настроенное на просмотр таблицы, которое позволяет пользователю добавлять и удалять ячейки (которые являются событиями). Добавление и удаление ДЕЙСТВУЕТ, однако, когда я удаляю ячейку (входя в режим редактирования), я могу нажать кнопку (-), чтобы удалить, затем нажимаю кнопку удаления, однако кнопка удаления остается выделенной, и ячейка не исчезает до Я нажал кнопку «Готово», которая выходит из режима редактирования. Этот вопрос кто-нибудь видел? Если так, есть ли решение? Спасибо

EDIT:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

NSLog(@"Delete");

[eventList removeObjectAtIndex:indexPath.row];
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject: indexPath] withRowAnimation:YES];
[tableView reloadData];

Ответы [ 2 ]

3 голосов
/ 27 октября 2010

Я предлагаю удалить вызов reloadData в commitEditingStyle. DeleteRowsAtIndexPaths уже заботится о перерисовке табличного представления.

Лучшее место для поиска письменных источников - документация .
См. «Пример удаления строки табличного представления» на этой странице .

Также обратите внимание, что в deleteRowsAtIndexPaths withRowAnimation НЕ принимает параметр BOOL. Вместо YES это должно быть значение перечисления UITableViewRowAnimation, например UITableViewRowAnimationFade.

0 голосов
/ 27 октября 2010

Вам определенно не нужно reloadData после удаления строки.Если это все еще не работает, вы можете попробовать обернуть удаление в beginUpdates и endUpdates.Наконец, аргумент withRowAnimation: должен быть одним из перечислений UITableViewRowAnimation вместо BOOL.

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