Search code examples
iphoneobjective-ciosios4

How to use NSNotification


In my application there is two viewControllers as FirstViewController and DetailViewController. When tap on a table cell, it navigate to DetailViewController. In DetailViewController, I want to edit and reload the FirstViewController's table view

How can I use NSNotification for this problem?

Here's the method I want to implement NSNotification stuff

-(IBAction) save{
strSelectedText=theTextField.text;

[NSNotificationCenter defaultCenter];
NSNotification* notification = [NSNotification notificationWithName:@"MyNotification" object:self];
[[NSNotificationCenter defaultCenter] postNotification:notification];  

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector (objFirstViewController) name:@"MyNotification" object:nil];



[self.navigationController popViewControllerAnimated:YES];
}

Solution

  • -(void)viewDidLoad {
    
    [NSNotificationCenter defaultCenter];
    NSNotification* notification = [NSNotification notificationWithName:@"MyNotification" object:self];
    [[NSNotificationCenter defaultCenter] postNotification:notification];  
    
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector (objFirstViewController) name:@"MyNotification" object:nil];
    
    }
    
    
    -(IBAction) save{
    
    [[NSNotificationCenter defaultCenter] postNotificationName:MyNotification object:sender];
    
    //this will go to where you implement your selector objFirstViewController.
    
    }
    
    -(void)objFirstViewController:(NSNotification *)notification {
    
    }