self.title sets navigationController and tabBarItem's title? Why?

爱⌒轻易说出口 提交于 2019-11-26 11:53:49

问题


I do this in a UIViewController for one of my tabs:

self.title = @\"Welcome\";

However, it\'s overwriting whatever I have for the tabBarItem. I have tried:

self.tabBarItem.title = @\"Home\";

and

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

But still, self.title overwrites the tabBarItem, regardless of whether I am trying the two latter pieces of code after the title has been set. The code even runs without errors, but the self.tabBarItem.title or initWithTitle doesn\'t do anything?


回答1:


OK, I figured it out! Here's what I am doing:

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

the navigationBar would inherit self.title, unless otherwise set using self.navigationItem.title




回答2:


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

this did it for me :=) (nothing of the above worked)




回答3:


Try:

[self setTitle:@"Welcome"];

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



回答4:


I was also facing the same issue, but i solve this issue like this. I set the title and image of tabBarItem right after i created them in appDelegate.

This is what i have done:

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


来源:https://stackoverflow.com/questions/1540718/self-title-sets-navigationcontroller-and-tabbaritems-title-why

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!