Search code examples
iphoneobjective-ciosxcodensnotificationcenter

Using segues and nsnotificationcenter


I have 2 viewcontrollers and I want to send a notification out from one to the other and have a label changed based on the name of the notification (pressing a UIButton). I just started using segues and found they are a very useful way to get from one view to another. The problem I am facing is that using a segue (modal at the moment), the second view controller is not receiving the notification. I believe that segues release and create new view controllers when used, not sure. Is there any way around this?

Thanks!


Solution

  • I think using NSNotification is not the right method for passing data from one VC to another. Like Rog said, use prepareForSegue and use a property on the destination VC:

    -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
        // Always check to make sure you are handling the right Segue
        if ([segue.identifier isEqualToString:@"mySegue"]) {
             MyOtherViewController *movc = segue.destinationViewController;
             movc.myProperty = @"MyValue";
        } 
    }