Question

I need to wait (don't execute the code) after the presentModalViewController until the modal view it's dismissed, it's possible or it's a conceptual error ?

-(NSDictionary *)authRequired
{
    //This view write the settings when dismissed (plist)
    [self presentModalViewController:loginRegView animated:YES]; 
    //Read from the setting file (plist) and send back (it's a delagate method)
    NSMutableDictionary *ret=[[NSMutableDictionary alloc] init];
    [ret setObject:[app.settings get:@"user"] forKey:@"user"];
    [ret setObject:[app.settings get:@"pass"] forKey:@"pass"];
    return ret;
}
Was it helpful?

Solution

What you'll have to do is create a LoginRegViewControllerDelegate protocol to which the View Controller that presents the Modal View Controller adheres, and have your LoginRegViewController (or whatever its name is) send a message to its delegate that it just closed / is going to close. In this delegate method, your delegate View Controller should read the just-set settings and do whatever it wants with them.

OTHER TIPS

To make your child view controller (modal view) more flexible and reusable you can use NSNotificationCenter. Here's the class reference.

Your modal view should post a notification, that it is going to be closed. Any other controller, that should react on this notification should add an observer to the same notification center.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top