set title of back bar button item in ios

I am using storyboards in my application, and if I set the title property of a ViewController class, that string will appear as the text of my back button when I push a SecondViewController, how can I change this?, I want to put a different title for the back button.

I have used this but it doesn’t work:

  • iOS 6 apps - how to deal with iPhone 5 screen size?
  • iOS 8 Messages To Token Field?
  • can't change the button color when not selected
  • Enable Xcode's “Check Spelling While Typing” Option by Default
  • Setting user_version in sqlite
  • multiple collectionView in multiple tableView cells
  • UIBarButtonItem *btnBack = [[UIBarButtonItem alloc]
                                       initWithTitle:@"Back" 
                                       style:UIBarButtonItemStyleBordered
                                       target:self
                                       action:nil];
        [self.navigationItem setBackBarButtonItem: btnBack];
    

    please help me

    5 Solutions Collect From Internet About “set title of back bar button item in ios”

    Try this ,

    Objective-C:

    UIBarButtonItem *btnBack = [[UIBarButtonItem alloc]
                                initWithTitle:@"Done"
                                style:UIBarButtonItemStyleBordered
                                target:self
                                action:nil];
    self.navigationController.navigationBar.topItem.backBarButtonItem=btnBack;
    

    Swift:

    var btn = UIBarButtonItem(title: "Done", style: .Plain, target: self, action: "backBtnClicked")
    
    self.navigationController?.navigationBar.topItem?.backBarButtonItem=btn
    

    When you use Storyboards you can change the text of the left bar button item aka the back button with no code. You will obviously need a UINavigationController within your Storyboard so you have the ability to push and pop views.

    1. Select the Navigation item object for the source view controller
    2. Enter text into the Back Button option in the inspector view on the right.

    Then when a view is pushed from this view it will use this title set.

    enter image description here

    Set a backBarButtonItem to the navigationItem of the previous viewController. Setting the topItem only works on the first time viewWillAppear. Please check this post for detail: iOS Set Navigation Bar Back Button Title

    NSArray *viewControllerArray = [self.navigationController viewControllers];
    // get index of the previous ViewContoller
    long previousIndex = [viewControllerArray indexOfObject:self] - 1;
    if (previousIndex >= 0) {
        UIViewController *previous = [viewControllerArray objectAtIndex:previousIndex];
        previous.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc]
                                                         initWithTitle:backButtonTitle
                                                         style:UIBarButtonItemStylePlain
                                                         target:self
                                                         action:nil];
    }
    

    Try changing the title of the first view controller where you push the second view controller, and set the tittle to the old one when u pop.

    Try this:

        UIBarButtonItem *btnBack = [[UIBarButtonItem alloc]
                                           initWithTitle:@"Back" 
                                           style:UIBarButtonItemStyleBordered
                                           target:self
                                           action:@selector(backButtonClicked:)];
            [self.navigationItem setLeftBarButtonItem: btnBack];
    
    
       -(void)backButtonClicked:(UIBarButtonItem*)sender
         {
            //do ur stuff
         }