viewDidDisappear
вызывается после того, как представление исчезло с экрана.Если представление исчезло с экрана из-за нажатия кнопки «Назад», оно будет удалено из стека навигационного контроллера.
Из ссылки на класс * UIViewController примечания к свойству navigationController:
Возвращает контроллер навигации, только если контроллер представления находится в его стеке.Это свойство равно nil, если не удается найти контроллер навигации.
Это означает, что [self navigationController]
возвращает ноль и, следовательно, сообщение setToolbarHidden
отправляется на ноль и не имеет никакого эффекта.
Чтобы скрыть это после загрузки нового представления, что, как вам кажется, нужно, вы можете вместо этого скрыть метод viewDidAppear
контроллера нового представления.