I managed to get my desired result by simply adding
[self.tableView reloadData];
to the end of my custom adjustOrderIdxForRow method, as well as, again in the
-(void)controllerDidChangeContent
method. To be completely honest I do not know if this is appropriate, or what type repercussions I might face down the rode because of it. But, the app is behaving appropriately now. Below are both methods in full. Any criticism is welcome, again, I don't know that this is appropriate, it just gave me my desired result.
- (void)adjustOrderIdxForRow:(NSInteger)row inSection:(NSInteger)section by:(NSInteger)adjustment
{
NSIndexPath *path = [NSIndexPath indexPathForRow:row inSection:section];
Top *top = [[self fetchedResultsController] objectAtIndexPath:path];
top.orderIdx = [NSNumber numberWithInteger:[top.orderIdx integerValue] + adjustment];
[self.tableView reloadData];
}
and
- (void)controllerDidChangeContent:(NSFetchedResultsController *)controller
{
[self.tableView endUpdates];
[self.tableView reloadData];
}