Вы должны обновить таблицу в три этапа.
1) Разобраться с вашей моделью
[documentURLs removeObjectAtIndex:row];
2) Разобраться с анимацией вашего стола
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
3) Обработайте обновление вашего файла (возможно, это можно было сделать раньше, потому что у вас может быть ошибка при удалении файла)
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
NSURL *urlToDelete = nil;
if (editingStyle == UITableViewCellEditingStyleDelete) {
NSInteger row = [indexPath row];
urlToDelete = [documentURLs objectAtIndex:row];
[documentURLs removeObjectAtIndex:row]; // you need to update your model
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
// do stuff to update the file here
}
}
или
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
NSURL *urlToDelete = nil;
if(editingStyle == UITableViewCellEditingStyleDelete) {
NSInteger row = [indexPath row];
urlToDelete = [documentURLs objectAtIndex:row];
// do stuff to update the file here...
if(success)
{
[documentURLs removeObjectAtIndex:row]; // you need to update your model
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
}
}
}
Примечание.Вы должны обратить внимание, если вы удаляете элемент из вашей модели, и количество моделей равно 0. В этом случае вы должны удалить весь раздел.
Надеюсь, это поможет.
PSпроверьте код, потому что я написал без XCode