Hey all. I'm still pretty new to iPhone development, and I'm having a bit of trouble figuring out how to change the title of my Navigation Bar. On another question on this site somebody recommended using :
viewController.title = @"title text";
but that isn't working for me...Do I need to add a UINavigationController to accomplish this? Or maybe just an outlet from my UIViewController subclass? If it helps, I defined the navigation bar in IB and I'm trying to set its title in my UIViewController subclass. This is another one of those simple things that gives me a headache. Putting self.title = @"title text"; in viewDidLoad
and initWithNibName
didn't work either. Anybody know what's happening and how to get it happening right?
Thanks!
title = @"title"; But If you have a standalone navigation bar that is created programmatically within an object of UIViewController, You have to set the initial appearance of the navigation bar by creating the appropriate UINavigationItem objects and adding them to the navigation bar object stack i.e.
Change the Bar Style A user changes the navigation bar's style, or UIBarStyle , by tapping the “Style” button to the left of the main page. This button opens an action sheet where users can change the background's appearance to default, black-opaque, or black- translucent.
The navigation title is the label that shows in your site's left-hand navigation menu (and the drop-down navigation, if applicable). The first thing to consider when attempting to change the navigation title: Are you labeling a subsite or a page?
The view controller must be a child of some UINavigationController for the .title
property to take effect. If the UINavigationBar is simply a view, you need to push a navigation item containing the title, or modify the last navigation item:
UINavigationItem* item = [[UINavigationItem alloc] initWithTitle:@"title text"]; ... [bar pushNavigationItem:item animated:YES]; [item release];
or
bar.topItem.title = @"title text";
if you are doing it all by code in the viewDidLoad
method of the UIViewController
you should only add self.title = @"title text";
something like this:
- (void)viewDidLoad { [super viewDidLoad]; self.title = @"title"; }
you could also try self.navigationItem.title = @"title";
also check if your navigationItem is not null and if you have set a custom background to the navigationbar check if the title is set without it.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With