I have the following code taken straight from the NavBar sample code from Apple. I put this in the viewDidLoad method for a view in my app that is being presented modally, and it wont work.
UIBarButtonItem *addButton = [[[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"AddTitle", @"")
style:UIBarButtonItemStyleBordered
target:self
action:@selector(addAction:)] autorelease];
self.navigationItem.rightBarButtonItem = addButton;
Any Suggestions?
Okay explained solution:
presentModalViewController:animated: presents a viewController modally, which does not have a UINavigationBar
, so you can do some things:
UINavigationBar
in your viewController's nib and add the "Add" button there and everything you need to setup.pushViewController:animated
: to show the viewController modally which will be on the navigation stack and have the UINavigationBar
for you to add your buttonUINavigationController
, using pushViewController:animated:
won't solve it, so you can present a UINavigationController
modally with your viewController as the rootViewController: YourViewController *viewController =[[[YourViewController alloc] initWithNibName:@"YourViewController" bundle:nil] autorelease];
UINavigationController *navController = [[[UINavigationController alloc] initWithRootViewController:viewController] autorelease];
[self.navigationController presentModalViewController:navController animated:YES];
Hope any of this helps