Container View Controllers - Übergeordnete Aktion benachrichtigen

Angenommen, ich habe einen benutzerdefinierten Container-View-Controller (MainViewController), in dem ich etwa Folgendes mache:

- (void)viewDidLoad
{
    [super viewDidLoad];        

    HomeViewController *homeVC = [[HomeViewController alloc] initWithNibName:@"HomeViewController" bundle:nil];
    [self addChildViewController:homeVC];
    [self.view addSubview:homeVC.view];

}

Der HomeViewController verfügt über eine Schaltfläche, z. B. "Los", die beim Drücken zum nächsten Ansichtscontroller wechseln muss. Daher muss ich den MainViewController über diese Aktion informieren. Wie geht das am besten?

Ich verwende einen benutzerdefinierten Container, da ich benutzerdefinierte Übergänge zwischen den Ansichtscontrollern ausführen muss. Wenn "go" gedrückt wird, werden einige der Ansichten auf dem HomeViewController animiert, während die Ansichten vom neuen View Controller animiert werden.

Natürlich könnte ich dem HomeViewController eine Eigenschaft vom Typ MainViewController geben und auf diese Weise Anrufe tätigen, aber ich hoffe, dass es eine sauberere Möglichkeit für die Container View Controller-API gibt.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage