Kompatibilität mit prepareForSegue und popViewController

Die Frage

Ich arbeite an einemiOS app und ich habe 3 aufeinanderfolgendeViewControllers:

TableViewController ->DetailViewController ->ImageViewController

Ich führe de Vorwärtssegue mit einem Knopf ausStoryboard) und um zurückzukehren, habe ich einen benutzerdefinierten Zurück-Button mit

[self.navigationController popViewControllerAnimated:YES];

Zum Weiterleiten von Daten verwende ich

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    [segue.destinationViewController someFunction];
}

So senden Sie Daten an das übergeordnete ElementViewController ich kann nutzenprepareForSegue in demDetailViewController, aber es funktioniert nicht in derImageViewController und dort muss ich benutzenNotifications.

Es ist in Ordnung, wenn ich benutzeprepareForSegue Daten senden mitpopViewControllerAnimated?

Sollte ich in beiden Fällen Benachrichtigungen verwenden?

Ein bisschen Code

Was habe ich in derDetailViewController ist eine Schaltfläche, die den Übergang zum ImageViewController ausführt (einfach per Drag & Drop steuern)Storyboard) und einen Zurück-Button mit:

- (IBAction)backAction:(id)sender {
     [self.navigationController popViewControllerAnimated:YES];
}

und dann die Funktion:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if([segue.identifier isEqualToString:@"forwardSegue"]) {
        [segue.destinationViewController someFuntionToImageViewController];
    } else {
        [segue.destinationViewController someFuntionToParentViewController];
    }
}

Ich habe festgestellt, dass ich dem keine segue.identifier zuweisen kannpopViewController Aktion.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage