У меня есть UITableView, встроенный в NavigationController.Каждая ячейка ссылается на более крупный информационный ViewController.В целях пользовательского интерфейса я скрываю панель навигации в TableView и показываю ее в InfoViewController.
Проблема, с которой я сталкиваюсь, заключается в следующем: при загрузке приложения NavBar успешно скрывается в TableView.Когда я в первый раз подключаюсь к ячейке и открываю InfoViewController, NavBar возвращается, как и ожидалось.Я возвращаюсь из этого VC в TableView.Опять же, NavBar скрыт, как и ожидалось.Если я нажму на другую ячейку, NavBar не отображается должным образом.ПРИМЕЧАНИЕ. Это происходит даже тогда, когда я удаляю любой код, чтобы скрыть панель навигации.
Вот соответствующие фрагменты кода:
TableViewController (в ViewDidLoad ()):
self.navigationController?.isNavigationBarHidden = true
InfoViewController:
override func viewWillAppear(_ animated: Bool) {
self.navigationController?.navigationBar.isHidden = false
super.viewWillAppear(animated)
}
Почему это сработало бы в первый раз, а не во второй.Любая помощь приветствуется!
Для уточнения:
Приложение открывается в TableView:
введите описание изображения здесь
Я нажимаю в TableViewCell, чтобы перейти кInfoViewController:
введите описание изображения здесь
Я нажимаю «Назад», чтобы вернуться к TableViewController.NavBar все еще скрыт.Я нажимаю на ту же ячейку:
введите описание изображения здесь
РЕДАКТИРОВАНИЕ: испорчен код TableViewController.Поставьте = false
вместо = true
.
Кроме того, у меня есть еще одна мысль, пожалуйста, кто-нибудь проверит это для меня.TableViewController находится внутри UIContainerView.Это почти как если бы я нажал «Назад», я выходил из потока NavigationController и не мог вернуться в него.