Storyboard Beziehung in iOS
Ich bin versucht, das neue Storyboard feature, jedoch bin ich verwirrt über Storyboard Beziehungen? Wie unterscheiden Sie sich zu IBOutlets?
Auch wie kann ich meine eigene Beziehung zu meiner eigenen UIViewController subclass?
Ich habe versucht, suchen in der Dokumentation, kann aber nicht viel über Sie.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Art, wie ich Sie verstehe, ist: Beziehungen sind iOS die Möglichkeit der Darstellung einer 'Eltern-Kind' Beziehung und während das scheint sehr Rekursives Beispiel der Eltern-Kind-Beziehung ist ein UIViewController Behälter mit einem UIViewController.
Das ist die Theorie sowieso-es ist besser zu verstehen anhand der UINavigationController. Es heißt ein 'container', denn es enthält so viele normale UIViewControllers in einem 'stack' - Metapher, so können Sie Ihre normalen UITableView drill-downs und pop-offs.
Der entscheidende Punkt ist, dass der Wechsel zwischen UINavigationController und die ersten UIViewController in Ihrem stack, gibt es eine 'Beziehung', während der Wechsel zwischen den ganzen rest der UIViewControllers ist eine regelmäßige push-segue.
Dasselbe zeigt sich in der UISplitViewController-es braucht zwei view-Controllern (manchmal auch als content-view-Controller) aus starten und die Verbindung zwischen der übergeordneten UISplitViewController (der container) und zwei reguläre (Gehalt) view-Controller
(also Beziehungen sind nicht wie IBOutlets, aber mehr wie leitet über -- Sie sind auch in der "leitet über' Kategorie der standard-view-controller-Container)
Nun - wir sind nicht erlaubt, um eine Unterklasse der standard-view-controller-Container, aber wir dürfen erstellen Sie benutzerdefinierte view-controller-Containern, aber ich kann nicht für das Leben von mir, definieren Sie eine Beziehung, in der meine benutzerdefinierte view-controller-container!!!!!!!!!!!
so: "kann ich Sie in meinem eigenen Controller?" die Antwort ist noch unbekannt (zu mich mindestens, und die Dokumentation ist Dünn am besten)
Erstellen Sie eine Unterklasse der UIStoryboardSegue wie diese:
Machen, eine custom segue zwischen zwei Objekten und setzen die Klasse als JTARelationshipSegue. In Ihrer view-controller stellen Sie den view-controller führen Sie die segue wie diese:
Müssen Sie, um das leitet über Bezeichner, die im interface builder zu addChild.
Impement
prepareForSegue:sender
so dass es fügt das leitet über Ziel-view-controller als Kind des aktuellen view-controller, wie diese:Müssen Sie eine andere segue Bezeichner für jedes Kind, für das Sie erstellen möchten (oder eine andere Möglichkeit der Identifizierung der spezifischen view-controller.
Dadurch wird Ihr storyboard-Datei sieht hübscher aus und ist besser lesbar, aber Sie tun können, besser, laden Sie einfach Ihre anderen view-Controller, und fügen Sie Sie als Kinder in Ihrer Ansicht habe der load-Methode:
Schrieb ich ein paar tutorials zur Verwendung von storyboards über auf meiner Website...
Teil 1 der tutorial
Teil 2 des Tutorials
Vielleicht ein bisschen helfen? Im Kern der Wechsel-Beziehungen liefert einen Identifikator für die Verknüpfung zwischen zwei Elementen auf dem storyboard. Diese Kennungen können Sie verwalten, wie die Dinge funktionieren.