Ich benutze zum ersten Mal Storyboards. Es läuft meistens gut, aber eine Situation ist sehr unklar:Storyboards und UITabBarControllers
Ich verwende einen Tab-Bar-Controller als meine anfängliche View-Controller. Ich habe drei Registerkarten, und sie sind jeweils eine Instanz der gleichen View-Controller-Klasse, mit dem einzigen Unterschied, dass ich ein anderes Array an jede Instanz übergeben möchte, um unterschiedliche Daten anzuzeigen.
Mein Gedanke war ich prepareForSegue:
in der UITabBarController
Instanz nutzen, um die richtige Anordnung zu jedem Ziel-View-Controller passieren ... aber vielleicht UITabBarController
nicht mit segues jeden View-Controller in einem Tab angezeigt werden, weil es in IB keine Möglichkeit zu Geben Sie eine Storyboard-ID für den "Übergang" zum Inhalt der Registerkarte an. (Wenn ich das Segment wähle, das den Tab-Controller mit dem Kind-Controller verbindet, sagt IB nur "Nicht anwendbar" im Anpassungsbereich.)
Also meine Frage ist: wie kann ich mit dieser Situation in IB umgehen?
Danke. Wie lege ich die Storyboard-ID für eines dieser Segmente fest, damit ich identifizieren kann, welches im Code ist? –
@GregMaletic, ich fürchte, es ist nicht möglich mit 'PrepareForSegue'. Eine mögliche Lösung wäre, eine benutzerdefinierte UITabBarController-Unterklasse zu implementieren, sie zu einem Delegaten der Registerkartenleiste zu machen und '- (void) tabBarController zu verarbeiten: (UITabBarController *) tabBarController didSelectViewController: (UIViewController *) viewController' (eigentlich würden Sie brauche eine benutzerdefinierte Unterklasse, um 'prepareForSegue' trotzdem zu implementieren. – FreeNickname
@GregMaletic, tut mir leid, es ist nicht 'UITabBarDelegate', es ist' UITabBarControllerDelegate'. Und wahrscheinlich ist es eine bessere Idee, stattdessen 'shouldSelectViewController' zu verwenden (anpassen und true zurückgeben). Aber "didSelect" könnte auch OK sein. – FreeNickname