self.title设置navigationController和tabBarItem的标题?为什么?

时间:2009-10-08 21:53:56

标签: iphone uinavigationcontroller tabbarcontroller

我在UIViewController中为我的一个标签执行此操作:

self.title = @"Welcome";

然而,它覆盖了我对tabBarItem的所有内容。我试过了:

self.tabBarItem.title = @"Home";

[self.tabBarItem initWithTitle:@"Home" image:[UIImage imageNamed:@"iconHome.png"] tag:0];

但是,self.title会覆盖tabBarItem,无论我是否在标题设置后尝试后两段代码。代码甚至可以正常运行,但self.tabBarItem.titleinitWithTitle没有做任何事情?

4 个答案:

答案 0 :(得分:166)

好的,我明白了!这就是我在做的事情:

self.title = @"Title for TabBarItem"; // TabBarItem.title inherits the viewController's self.title
self.navigationItem.title = @"Title for NavigationBar";

navigationBar将继承self.title,除非使用self.navigationItem.title

进行另外设置

答案 1 :(得分:54)

//set nav item title
self.navigationController.navigationBar.topItem.title = @"zurück";

这对我来说是这样的:=) (以上都没有)

答案 2 :(得分:0)

尝试:

[self setTitle:@"Welcome"];

UITabBarItem *item = [[UITabBarItem alloc] initWithTitle:@"Home" image:[UIImage imageNamed: image] tag:0];
[self setTabBarItem:item];
[item release];

答案 3 :(得分:0)

我也遇到了同样的问题,但我这样解决了这个问题。我在appDelegate中创建tabBarItem之后立即设置标题和图像。

这就是我所做的:

[viewController setTitle:@"controllerTitle"];
[[viewController tabBarItem] setTitle:@"Custome Title for tab"];
[[viewController tabBarItem] setImage:[UIImage imageNamed:@"tab.png"]];