Muss ich rufen Sie nach dem Aufruf von addSubview addChildViewController?
Ich versuche, erstellen Sie einen container view controller mit iOS5
und neue Methoden wie addChildViewController
.
Muss ich anrufen addSubview
nach dem Aufruf addChildViewController
?
Muss ich anrufen removeFromSuperview
vor dem Aufruf removeChildViewController
?
Ich glaube nicht, siehe nichts über diese in Apple Google docs.
Was denkst du?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kurze Antwort: "ja und ja." Die view-Hierarchie und der Blick controller Hierarchie sind noch unabhängig. Die containment-API ermöglicht lediglich Ansichten aus anderen Controller zu präsentieren, der sich in einem übergeordneten controller ' s view in einem sauberen und konsistenten Art und Weise.
Finden Sie ein bisschen in Apple docs hier... das ist eine relevante passage aus dem "Container-View-Controller Anordnen, Inhalte von Anderen View-Controller" - Abschnitt:
Wenn Sie Zugriff haben, würde ich empfehlen, Check-out der WWDC 2011 video mit dem Titel "Umsetzung UIViewController Containment" (laden Sie es von Apple-Entwickler-Video-Archiv).
1) muss ich rufen Sie nach dem Aufruf von addSubview addChildViewController?
Ja
2) muss ich die aufrufen removeFromSuperview vor dem Aufruf removeChildViewController?
Nicht ganz
Sollten Sie rufen
removeFromParentViewController:
stattremoveChildViewController:
Sie sollten auch an
willMoveToParentViewController:
Für das hinzufügen /entfernen, finden Sie in dieser großen Kategorie :
UIViewController + Container
Offizielle Ressource an developer.apple.com
[childViewController willMoveToParentViewController:self]
im containerAddChildViewContoller Methode?willMoveToParentViewController
": beachten Sie, dasswillMoveToParentViewController
wird automatisch aufgerufenaddChildViewController
. Siehe die Abschnitt DiskussionHinzufügen zu Peter ' s Antwort:
ein Grund fand ich für den Aufruf
addChildViewController
voraddSubview
war, dass, wennaddSubview
heißt dann dieviewDidLoad
von dem Kind genannt wird, und in einigen Fällen werden Sie wollen, um die parent-child-Hierarchie richtig bis zu diesem Punkt. Wenn das nicht getan, während des Kindes die Kommentarzeichen vor der viewDidLoad die parentViewController Eigenschaft nil.Das unten ist ein Beispiel der von Apple bereitgestellten Dokumentation.
Können Sie auch durch die ausführliche Erklärung, die hier gegeben -
https://developer.apple.com/library/archive/featuredarticles/ViewControllerPGforiPhoneOS/ImplementingaContainerViewController.html
Dies wird Ihnen die Idee über child-und parent-view-controller-Beziehungen und wie man mit Ihnen arbeiten.