UITabBarController 不显示其他选项卡的标题

use*_*468 5 iphone objective-c ios

我正在尝试以编程方式制作 UITabBarController 。这似乎有效,我有 2 个选项卡,问题是第一次加载时 RootViewController 中没有显示第二个选项卡标题。怎么会?

这是加载 RootViewController 的时候:

在此输入图像描述

当我单击没有标题的第二个选项卡时,会出现标题:

在此输入图像描述

当我返回时,第二个选项卡标题仍然存在:

在此输入图像描述

我的问题是为什么加载 RootViewController 时它没有显示。

我的 appDelegate 方法在 didFinishLaunchingWithOptions 中:

tabBarController = [[UITabBarController alloc] init];

MenuViewController *firstTab = [[MenuViewController alloc] initWithNibName:@"MenuViewController" bundle:nil];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:firstTab];


FixtureViewController *secondTab = [[FixtureViewController alloc] initWithNibName:@"FixtureViewController" bundle:nil];
UINavigationController *navController2 = [[UINavigationController alloc] initWithRootViewController:secondTab];


self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = @[navController, navController2];

[self.window setRootViewController:tabBarController];
Run Code Online (Sandbox Code Playgroud)

Gre*_*reg 0

将标题添加到视图控制器:

firstTab.title = @"Title to display 1";
secondTab.title = @"Title to display 2";
Run Code Online (Sandbox Code Playgroud)

  • viewControllers 应该设置自己的标题。恕我直言,在父 viewController 中设置 viewControllers 属性是不好的编码风格 (2认同)