i используется комбинация контроллера очереди и результатов для обновления и отображения некоторых объектов coredata.У меня есть некоторые исключения и проблемы (см. Эту ветку NSOperationQueue и NSFetchedResultsController ).После долгих исследований я обнаружил, что проблема связана с NSFetchedResultsController, и решил написать собственную логику обновления для uitableview.
Моя новая стратегия: - Когда загружается мое представление, я извлекаю все объекты из базовых данных в массив и отображаю их - Через 20 секунд я пытаюсь загрузить новые данные из сети и обновить основные данные (в течение секундыпоток / или nsoperation) Этот поток использует свой собственный объектный текст ... мой основной контекст будет игнорировать любые изменения!- После этого я снова получаю свои объекты, но во временном массиве. - Теперь мне нужно обновить свой uitableview, но я не знаю, как ... мне нужно сравнить оба массива и обновить, удалить или вставить ячейки ..
Для меня важно иметь эту хорошую анимацию для вставки и удаления.В моем случае все объекты находятся только в одном разделе!Но вполне возможно, что у меня есть вид с "Cars" и "Hotels" => 2 раздела, но с разными объектами (2 массива источника данных)
Может кто-нибудь предоставить мне хороший пример для обновления uitableview.
Я использовал:
- (void)controller:(NSFetchedResultsController *)controller didChangeObject:(id)anObject atIndexPath:(NSIndexPath *)indexPath forChangeType:(NSFetchedResultsChangeType)type newIndexPath:(NSIndexPath *)newIndexPath
Мне нужно заменить NSFetchedResultsController
логику.
Большое спасибо!