title: Can't change back button title but I can hide it
body: <p>I'm developing an <strong>iPhone</strong> application with <strong>latest SDK</strong> and <strong>XCode 4.2</strong></p>
  
  <p>I use a UINavigationController, and to show a new ViewController I do this on AppDelegate.m:</p>
  
  <pre><code>    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
      {
          self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
          // Override point for customization after application launch.
          if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone)
          {
              self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil];
          }
          else
          {
              self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil];
          }
          self.viewController.title = NSLocalizedString(@"MAIN", nil);
  
          navController = [[UINavigationController alloc] initWithRootViewController:self.viewController];
          navController.navigationBar.tintColor = [UIColor darkGrayColor];
  
          self.window.rootViewController = navController;
          [self.window makeKeyAndVisible];
          return YES;
      }
  
      - (void) openDocumentation
      {
          if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone)
          {
              docViewController = [[DocumentationViewController alloc] initWithNibName:@"DocumentationViewController_iPhone" bundle:nil];
          }
          else
          {
              docViewController = [[DocumentationViewController alloc] initWithNibName:@"DocumentationViewControllerr_iPad" bundle:nil];
          }
          docViewController.title = NSLocalizedString(@"DOCUMENTATION", nil);
  self.viewController.navigationItem.backBarButtonItem.title = @"Back";
          [navController pushViewController:docViewController animated:YES];
      }
  </code></pre>
  
  <p>On <code>DocumentationViewController.m</code> I do this:</p>
  
  <pre><code>- (void) viewWillAppear:(BOOL)animated
  {
      UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Back"
                                                                     style:UIBarButtonItemStylePlain target:nil action:nil];
      self.navigationItem.backBarButtonItem = backButton;
  }
  </code></pre>
  
  <p>But it doesn't change back button title.</p>
  
  <p>I move that code to viewDidLoad:</p>
  
  <pre><code>- (void)viewDidLoad
  {
      [super viewDidLoad];
      // Do any additional setup after loading the view from its nib.
      UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Back"
                                                                     style:UIBarButtonItemStylePlain target:nil action:nil];
      self.navigationItem.backBarButtonItem = backButton;
  }
  
  - (void) viewWillAppear:(BOOL)animated
  {
  
  }
  </code></pre>
  
  <p>But still doesn't work.</p>
  
  <p>And this doesn't work either:</p>
  
  <pre><code>- (void) viewWillAppear:(BOOL)animated
  {
      self.navigationItem.backBarButtonItem.title = @"Back";
  }
  </code></pre>
  
  <p>But if I do this, to test if I can't access back button:</p>
  
  <pre><code>- (void) viewWillAppear:(BOOL)animated
  {
      self.navigationItem.hidesBackButton = YES;
  }
  </code></pre>
  
  <p>It works!! And hides back button.</p>
  
  <p>What am I doing wrong?</p>