2010-12-11 7 views
0

Entschuldigen Sie Jungs mit dieser dummen Frage, aber ich bin eine Art Noob in iPhone-Entwicklung. Was ich tun muss, ist dies. Ich habe ein Projekt, das von einem Freund entwickelt wurde, der auf der Sichtweise basiert. Er hat es basierend auf der ursprünglichen Apple-Vorlage auf Xcode erstellt.iphone - ein View-based Projekt transformieren

Nachdem ich meinen Kopf an die Wand geschlagen hatte, wurde mir klar, dass ich dieses Projekt von einem auf View basierenden auf UINavigation basierenden Projekt umstellen musste. Was ich meine ist: sein Projekt hat einen View-Controller und einen Delegierten. Wenn es ausgeführt wird, ruft der Delegat den View-Controller auf, und die äquivalente Ansicht lädt.

Was ich brauche, ist ein UINavigationController vor dem ViewController, weil ich plane, einen zweiten ViewController von diesem UINavigationController verwaltet, so kann ich Folienübergänge zwischen ihnen und solche Dinge tun.

Meine Frage ist: Ich stelle mir vor, dies ist keine komplexe Operation, wenn Sie wollen, wo sich ändern. Welche Änderungen und wo soll ich machen, um vor dem viewController einen UINavigationController hinzuzufügen? Ich stelle mir das wird die Hierarchie ändern:

Delegate> UINavigagionController> Viewcontroller

Denken Sie daran, dass dieses Projekt auf der Xcode View-basierte Vorlage basiert, so dass ich muss wahrscheinlich Sachen auf Interface Builder ändern.

Danke.

Antwort

0
  • Fügen Sie in IB eine UINavigationController zu Ihrer MainWindow.xib hinzu.
  • Ziehen Sie den vorhandenen Ansicht-Controller auf das Nav-Controller-Symbol, um ihn zum Root-Controller des Nav-Controllers zu machen.
  • Fügen Sie in Ihrem Code eine Eigenschaft zu Ihrem Anwendungsdelegaten für den Navigationscontroller hinzu. Markiere es als IBOutlet.
  • Verbinden Sie in IB das Navigationssteuerungsobjekt mit dem Navigationssteuerungsausgang in Ihrem App-Delegaten.
  • Ändern Sie in Ihrem Code in -application:didFinishLaunchingWithOptions: die Verweise auf Ihren ursprünglichen Ansichtscontroller auf die neue Navigationssteuerungseigenschaft.
+0

Danke. Wenn ich den Navigationscontroller auf der MainWindow.xib hinzufüge, enthält er dort einen viewController namens Root View Controller. Wenn ich versuche, den vorhandenen viewController auf den NC zu ziehen, wird er in diesen Root View Controller eingefügt. Ist das korrekt? – Roger

+0

Nein, Sie müssen den Root-Controller durch Ihren View-Controller ersetzen. –

+0

ahhhhhhhhhhh .... danke !!!!!!!!!! – Roger