1

我有一个 UINavigationController 和 UITabBarController 同时可见。标签栏按钮和导航栏都从当前活动视图的标题中获取它们的文本。

- (void)viewDidLoad {
    [super viewDidLoad];
    self.title = @"View Title";

但是我想要不同的。事实上,无论显示哪个视图,我都希望导航控制器标题保持不变。

有任何想法吗?

非常感谢。

4

5 回答 5

3

试试这个

UITabBarItem *tItem = [self tabBarItem];
[tItem setTitle:@"Title for tabbar"];

当您设置导航标题时,它不会更改您的标签栏标题

[self setTitle:@"Title for navBar"];

但我发现有时它会同时改变 tabBar 和 naviBar

然后我再次在 -(void)viewWillAppear 中插入 TabBar 设置标题代码以防止这种情况发生

谢谢

于 2011-04-11T12:55:05.840 回答
1

您必须像上面所做的那样,在其他视图控制器中手动分配标题名称。

如果您的视图层次结构的深度超过两级,请小心,因为后退按钮对用户来说看起来有点奇怪(除非您覆盖它)。事实上,如果每个视图都有相同的标题,那么用户可能会觉得很奇怪,句号...

于 2009-08-26T20:22:35.847 回答
1
   -(void)viewDidLoad{
 [self setTitle:@"Custom Title goes here"];
}

这对我有用。

于 2010-02-24T16:59:07.953 回答
0

根据 KwangBok Lee 的说法,我已经测试过,最好的答案是:

self.title = @"my settings";//changes both tabbars and navigationbars title

self.tabBarItem.title = @"settings";//only changes tabbars title
于 2012-08-27T03:47:42.870 回答
0

我发现的是......使用

self.tabBarController.title = @"navTitle";

更改导航栏标题,同时

self.title = @"tabTitle";

更改标签栏项目标题。

于 2013-05-04T03:44:34.537 回答