当item是另一个UITabBarController时,如何在UITabBarController中设置项目标题?

时间:2013-12-20 15:52:22

标签: ios uitabbarcontroller uistoryboard

我使用故事板创建了一个UITabBarController,其中包含3个项目,前两个是视图控制器。我需要第三个项目指向另一个UITabBarController,其中包含其他视图控制器项。

在第一个UITabBarController中,我可以轻松地为前两个视图控制器项设置ITEM标题,但是如何设置UITabBarController项的标题,这是第三项,是以编程方式还是使用Storyboard?

使用Xcode 5iOS 7

感谢。

2 个答案:

答案 0 :(得分:1)

取自Apple UITabBarController类的文档:

  

部署标签栏界面时,必须将此视图安装为窗口的根目录。与其他视图控制器不同,标签栏界面不应该作为另一个视图控制器的子项安装。

所以这意味着你不能将UITabBarController嵌套在另一个UITabBarController中。 Apple不支持这一点,如果你尝试这样做,你可能会遇到无法预料的问题。此外,当我刚才使用故事板尝试这个设置时,我只能在使用iOS 6时看到两个标签栏。在iOS 7下,只有第一个标签栏出现了。所以你可以看到,当Apple告诉你你不应该这样做时,这是因为他们可能会以一种破坏它的方式改变实现,而且他们显然已经这样做了。

答案 1 :(得分:0)

如果您的标签栏控制器是根视图控制器,要设置第3个标签的标题,您可以尝试:

YourAppDelegateClass *appDelegate = [[UIApplication sharedApplication] delegate];
UITabBarController *tabController = (UITabBarController *)appDelegate.window.rootViewController;
[[tabController.tabBar.items objectAtIndex:2] setTitle:@"YOUR TITLE"];