Когда перемещается последняя строка в разделе UITableView с базовыми данными -> NSRangeException - PullRequest
3 голосов
/ 26 февраля 2010

Привет: перемещение строк между разделами в UITableView на основе Core Data работает довольно хорошо после того, как я реализовал проверку 'userDrivenChange' в 'controllerDidChangeContent:', как упомянуто в документации Apple. Но только при перемещении последней строки раздела в другой раздел я получаю NSRangeException . Очевидно, есть проблема, когда разделы становятся пустыми. Как я могу справиться с этим наилучшим образом?

1 Ответ

0 голосов
/ 14 ноября 2011

Реализовали ли вы метод -controller:didChangeSection:atIndex:forChangeType:? Если нет, это может выглядеть примерно так:

-(void)controller:(NSFetchedResultsController *)controller didChangeSection:(id <NSFetchedResultsSectionInfo>)sectionInfo atIndex:(NSUInteger)sectionIndex forChangeType:(NSFetchedResultsChangeType)type {     
    switch(type) {          
        case NSFetchedResultsChangeInsert:
            [self.tableView insertSections:[NSIndexSet indexSetWithIndex:sectionIndex] withRowAnimation:UITableViewRowAnimationFade];
            break;

        case NSFetchedResultsChangeDelete:
            [self.tableView deleteSections:[NSIndexSet indexSetWithIndex:sectionIndex] withRowAnimation:UITableViewRowAnimationFade];
            break;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...