This is an example of how to use the new
NSFetchedResultsController. The trick is to queue the updates made through the
NSFetchedResultsControllerDelegate until the controller finishes its updates.
UICollectionView doesn't have the same
UITableView has to let it work easily with
NSFetchedResultsController, so you have to queue them or you get internal consistency runtime exceptions.
Clone the repo and look in the
UICollectionViewController subclass. The logic inside the
.m file shows how to queue updates.
Section updates are stored in
_sectionChanges while udates to objects within sections are stored in
controllerDidChangeContent: is called, these updates are dequeued.
Most of the logic for this is taken from this gist.