2016-04-07 9 views
-1

Wenn ich einen UINavigationController initialisiere, indem ich einen UITableViewController als Root-View-Controller übergebe, kann ich den UINavigationController von der UITableViewController-Eigenschaft 'navigationController' beziehen. Ich frage mich:Wie wird ein UINavigationController zum navigationController eines UITableView?

  1. wird eine solche Eigenschaft automatisch während der Initialisierung festgelegt?
  2. ist navigationController eine Eigenschaft eines Protokolls, das UITableViewController oder seine Elternklasse implementiert?
+0

Ist egal und kann sich ändern. – dasdom

+0

Meinst du 'UINavigationController' anstelle von' UINavigationBar'? Und 'navigationController' anstelle von' navigationBar'? – rmaddy

+0

Es scheint hier eine Menge Verwirrung zu geben ... UINavigationBar hat keinen Root-View-Controller. UITableView ist kein View-Controller ... was versuchst du zu erreichen? – NKorotkov

Antwort

0

UINavigationController nennt [rootViewController didMoveToParentViewController:self]

Von dieser Methode Viewcontrollers wissen, wo sie aufgenommen wurden.

Auch Viewcontrollers haben getter parentViewController. navigationController ist nur Bequemlichkeit Getter, die parentViewController in UINavigationController * geworfen.

Verwandte Themen