Ответ 1
Вы можете сделать:
[self.navigationItem setHidesBackButton:YES];
В вашем втором контроллере просмотра (тот, который вы хотите скрыть кнопку).
У меня есть приложение с панелью навигации, которая подталкивается к контроллеру экрана просмотра входа в систему, а затем переходит в главное меню. Есть ли способ удалить заднюю кнопку из главного меню, чтобы пользователь не смог вернуться на экран входа в систему?
Спасибо!
РЕДАКТИРОВАТЬ: Использование Xcode 4.3 и программная работа всей работы.
Вы можете сделать:
[self.navigationItem setHidesBackButton:YES];
В вашем втором контроллере просмотра (тот, который вы хотите скрыть кнопку).
Ответ Peters правильный, хотя я думаю, что лучший вопрос - почему? В такой схеме, как ваша, где вы хотите войти в систему, вместо того, чтобы использовать Pushed VC, представить Modal VC и использовать метод делегата для возврата пользовательской информации, которая была получена в процессе входа в систему. Я могу опубликовать полный пример кода, если вам это нужно, но похоже, что у вас есть детали, разработанные с вашим процессом входа в систему. Просто используйте:
presentModalViewController
вместо:
pushViewController
Таким образом, вам не нужно беспокоиться о стеке навигации и делать что-то, что не соответствует правилам пользовательского интерфейса.
Приведенный выше код не работал у меня. Как предложено в UINavigationItem setHidesBackButton: ДА не будет препятствовать возврату, Мне пришлось использовать:
[self.navigationItem setLeftBarButtonItem:[[UIBarButtonItem alloc] initWithCustomView:[[UIView alloc] init]]];
В быстрой
self.navigationItem.hidesBackButton = true
Попробуйте следующее:
[self.navigationItem setHidesBackButton:YES];
или
[self.navigationItem setHidesBackButton:YES animated:YES];
Пробовал в Xcode7.3.1, быстро
self.navigationItem.setHidesBackButton(true, animated: true)
Он скрывает только стрелку назад и отключает действие назад, но я все еще вижу имя предыдущего контроллера представления.
Для тех, кто хочет скрыть имя предыдущего контроллера представлений, попробуйте ответ на йогу для меня. В быстрой
self.navigationItem.leftBarButtonItem = UIBarButtonItem(customView: UIView())