iPhone one title for all view controllers

2019-02-28 02:21发布

I have an app with tab bar controller (with 4 views controller) and it contains a navigation controller. All of this was create programmatically. My question: Is there a way how to set one navigation bar title for all view controllers ? For example: When i switch tabs, title is the same. Ideal solution for me is set title in app delegate file. Thanks a lot

4条回答
ら.Afraid
2楼-- · 2019-02-28 02:34

If you know that there will be exactly 4 views controller, just do self.title = @"your title"; If you want to change "your title" once and have them all changed, just create a static global or use plist. And put the code under viewDidAppear so that it refreshes every time. No need to do anything too complex :)

查看更多
一夜七次
3楼-- · 2019-02-28 02:36

You can create a very basic subclass of UIViewController and set its title. Then, just have your other UIViewController subclasses inherit from this base class instead of directly from UIViewController.

查看更多
劳资没心,怎么记你
4楼-- · 2019-02-28 02:44

For all of you, I think you want to put a log there, and it is to set an image file as the tab bar sub view and set the heights of the view controllers less the tab bar image as

UIImageView *navImage = [[UIImageView alloc]initWithImage:[UIImage imageNamed:IMG_LOGO]];
//[navImage setCenter:CGPointMake(160, 21)];
[navImage setCenter:CGPointMake(160, 21)];
[self.navigationController.navigationBar addSubview: navImage];
[navImage release];
查看更多
Summer. ? 凉城
5楼-- · 2019-02-28 02:57

Try something like this (i don't have access to Xcode atm so please debug it first):

for (int i = 0; i < [[tabBarController viewControllers] count]; i++) {
    [tabBarController objectAtIndex:i].title = @"This is the title";
}
查看更多
登录 后发表回答