7

In meiner App habe ich einen UITabBarController in meinen UINavigationController eingebettet. Das Problem besteht darin, dass der UINavigationController diese Registerleiste als einen einzigen Ansicht-Controller behandelt, obwohl vier Registerkarten darin enthalten sind. Ich benötige für jede dieser 4 Registerkarten, die in der Kopfzeile der Navigationsleiste angezeigt werden, einen anderen Titel. Die Verwendung von self.title für eine Unterklasse für diese 4 Ansichten tut nichts. Es wird nur der gleiche Titel in der Navigationsleiste angezeigt, denn wie gesagt, der UINavigationController behandelt den gesamten Tab-Controller als eine einzige Ansicht.Verschiedene UINavigationController-Titel für eingebettete UITabBar-Unteransichten festlegen?

Wie kann ich separate Titel für jede meiner Ansichten haben, die Tabs innerhalb des Tab-Bar-Controllers sind?

Antwort

5

Sieht ganz einfach aus.

eine UITabBarDelegate als UITabBarController Unterklasse setzen und die delegierte Methode implementieren -

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item 

Innerhalb dieses Verfahren der jeweiligen Titel, basierend auf dem Registerkarte ausgewählt eingestellt. Es sollte funktionieren!

10

Versuchen Sie es mit [self.navigationItem setTitle:] in jedem Ansicht Controller der Registerkarte. Wenn dies nicht funktioniert, versuchen Sie es tiefer, [self.tabBarController.navigationItem setTitle:].

Verwandte Themen