Frage

muss ich warten (Sie den Code nicht ausgeführt werden), nachdem die PresentModalViewController bis zum modalen Ansicht es abgewiesen hat, ist es möglich, oder es ist ein gedanklicher Fehler?

-(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;
}
War es hilfreich?

Lösung

Was Sie tun müssen, ist ein LoginRegViewControllerDelegate Protokoll zu erstellen, auf die die View-Controller, dass präsentiert die Modal-View-Controller haftet, und Ihre LoginRegViewController haben (oder was auch immer sein Name ist) eine Nachricht an seine delegate senden, dass es gerade geschlossen / gehen zu schließen ist. In diesem Delegatmethode, Ihre Stellvertretung-View-Controller sollte die Just-Set-Einstellungen lesen und tun, was es mit sich will.

Andere Tipps

Um Ihre Kind-View-Controller (modal-Ansicht) flexibler zu machen und wiederverwendbar Sie NSNotificationCenter verwenden können. Hier ist die Klassenreferenz.

Ihre modal Ansicht sollte eine Benachrichtigung senden, dass es geschlossen sein wird. Jeder anderer Controller, die auf dieser Meldung reagieren sollten soll einen Beobachter zu dem gleichen Notification Center hinzufügen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top