I have a UITabbar with multiple controllers. One of the controllers is used to add events to the main data, and the other controller is used to display events, as in a UITableView, using the NSFetchedResultsController .
Here is the behavior I would like to achieve: After the disappearance, the UITableView stops updating, and when the user returns, the entire view of the table is reloaded. Otherwise, inserting events from another controller takes longer because new rows are created in the UITableView , even if they are not visible.
I am wondering how I can achieve this behavior since it does not seem to work as I expect it to be:
I set the NSFetchedResultsController delegate to nil in viewWillDisappear and restored it to viewWillAppear along with a call to [UITableView reloadData] ;
Somehow I do not see new data and suspect that this is due to the way NSFetchedResultsController stops the selection if it does not have a delegate.
How can I correctly “pause” updates to a UITableView when it disappears, but can still see the entire dataset when the controller reappears?
source share