I've tried following this post re: passing data back to a prior viewController without much luck. I've spent more time than I care to admit on this, I've read all I can, yet nothing I've found here works.
Passing Data between View Controllers
Here's what I'm trying to do:
Legend:  AddPOIViewController -----------> CategoryViewController
Step 1:  empty textField      ---segue---> selectCategory
Step 2:  setCategory on CategoryViewController
Step 3:  AddPOIViewController <--delegate-- setCategory
I have an AddPOIViewController (A) and a CategoryViewController (B). I have a segue that works fine from A to B. I want to select a category in B and dump it back in A.
Here's what I've done:
AddPOIViewController.h
In my segue from AddPOIViewController to CategoryTableViewController, I set the delegate as follows:
 CategoryTableViewController *categoryTableViewController = [navigationController viewControllers][0];
 categoryTableViewController.delegate = (id<CategoryTableViewControllerDelegate>)self;
// Delegate method
 - (void)addItemViewController:(CategoryTableViewController *)controller didSelectCategory:(LocationCategory *)selectedCategory {
    NSLog(@"This was returned from CategoryTVC: %@", self.selectedCategory);
}
CategoryTableViewController.h
// This property sets CategoryTVC as the delgate of AddPOIViewController
@property (nonatomic, weak) id <CategoryTableViewControllerDelegate> delegate;
// This property is public so the AddPOIVC knows about it
@property (nonatomic, strong) LocationCategory *selectedCategory;
CategoryTableViewController.h
    - (IBAction)done:(id)sender {
        [self.delegate categoryTableViewControllerDidSave:self];    
    // This passes the value back to the AddPOIViewController
    [self.delegate addItemViewController:self didSelectCategory:self.selectedCategory];
}
 
     
    