Frage

Ich arbeite an einer Anwendung, die Ich mag würde die gleiche Mischung aus Navigation und Tab Bars verwenden, die die iPod / Musik-Anwendung verwendet Wiedergabelisten zu navigieren.

Grundsätzlich gilt:

  • Navigation, um mit tiefer in einer bestimmten Liste Baum einzutauchen.
  • Ein Tab-Leiste entlang der Unterseite zwischen den Listen zu wechseln, die auf den meisten / alle Subscreens angezeigt wird.
  • Der Inhalt der Tab-Leiste sind konstant zwischen allen Bildschirmen.
  • Die Reaktion der Tab-Leiste abgegriffen wird, ist das gleiche auf allen Bildschirmen. Es dem Benutzer den ganzen Weg zurück in die Wurzel erscheint und legt sie auf dieser Liste

Navigation eingebettet in Registerkarten, in der Navigation eingebettet Registerkarten? Weder scheint, wie es recht tun, was ich will. Auf der anderen Seite, wenn ich mit einem grundlegenden Navigations-App-Stick und fügen Sie einfach den Tabs, nicht ich dabei eine Menge zusätzlichen Code haben?

Was ist der beste Ansatz für das?

War es hilfreich?

Lösung

Ich habe apps, die gerade dieses tun gebaut. Der beste Weg, um darüber nachzudenken, ist an der schmalsten Stelle, die einzelnen View-Controller zu starten. Im iPod Beispiel würde Controller für Künstler gehören, Alben, Wiedergabelisten, Songs, usw. Beachten Sie, wenn Sie auf einer Playlist tippen, es Ihnen auf eine Liste von Songs nimmt. Dies sind zwei separate View-Controller.

Jeder von Tabs auf dem iPod App sehen eine Navigation-Controller in ihnen. Die NAV-Controller wickeln die Stammansicht Controller der Laschen des App. Und dann jede der nav-Controller wird als der Viewcontrollers des Registerkarte Controller eingestellt. Der Code würde wie folgt aussehen

FirstTabViewController *first = [[FirstTabViewController alloc] init...];
SecondTabViewController *second = ...;

UINavigationController *nav1 = [[UINavigationController alloc] initWithRootViewController:first];
UINavigationController *nav2 = [[UINavigationController alloc] initWithRootViewController:second];

myTabBarController.viewControllers = [NSArray arrayWithObjects:nav1, nav2, nil];
// Then make sure to release things to avoid leaks

Wenn Sie den Übergang von etwa Playlists-> Liste der Titel in einer ausgewählten Wiedergabeliste zu handhaben wollten, würden Sie dies tun, in der Playlist Viewcontroller ([self.navigationController pushViewController:theListOfSongsViewController animated:SUREWHYNOT]).

Andere Tipps

So weit, ich bin auf der Suche in einem UITabBarController mit UINavigationControllers in jeder Scheibe mit einem kleinen benutzerdefinierten Code den Navigation-Controller auf dem Registerkarte Ziel zurück an die Wurzel auf einem Registerkarte Schalter Pop.

hat Apple einige große Dokumentation View-Controller (Navigation-Controller innerhalb Tab-Controller) auf der Kombination von

http://developer.apple.com/iphone /library/featuredarticles/ViewControllerPGforiPhoneOS/CombiningViewControllers/CombiningViewControllers.html

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top