Как заметил @wcochran выше, при работе с viewControllers, помещенными в стек навигационного контроллера, выход backBarButtonItem уже подключен и не может быть изменен.Кроме того, выбор навигационного элемента дочернего ВК и изменение текста кнопки «Назад» в IB не дает ожидаемого результата.
Теперь вы можете подумать, что замена backBarButtonItem дочернего ВК решит проблему, но это не так.,Смущает, что если вы хотите установить заголовок кнопки «Назад» дочернего VC, вы должны установить заголовок кнопки «Назад» для его parent (!), Например:
- (void)viewWillAppear:(BOOL)animated // in the parent VC!
{
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStylePlain target:nil action:nil];
self.navigationItem.backBarButtonItem = backButton;
}
Это не будет ничего делать на родительском VC.На самом деле, если родителем является RootViewController для navigationController, кнопка возврата вообще не будет.Но потомок унаследует (или заберет) созданную вами кнопку возврата.
Это относится только к непосредственному дочернему VC, поэтому, если вы хотите сохранить метку вниз в стеке navigationController, вам нужно установитьэто на каждого родителя.
Спасибо @wiliz в #iphonedev за объяснение мне.