У меня есть ViewController с именем SourceViewController
, который встроен в NavigationController.Set NavigationBar for Destination ViewController Only
SourceViewController
от 0 до DestinationViewController
UITableViewCell
выбор.
Я хочу скрыть навигационную панель на SourceViewController
, но отобразите ее на DestinationViewController
, чтобы показать кнопку «Назад».
Так, в SourceViewController
:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController?.navigationBar.hidden = true
}
И в DestinationViewController
: переопределение Func viewDidLoad() { super.viewDidLoad()
self.navigationController?.navigationBar.hidden = false
}
Однако, когда я нажимаю "Назад" в DestinationViewController
для возврата к SourceViewController
, навигационная панель снова появляется в SourceViewController
Следующим «очевидным» шагом было бы установить navigationBar.hidden = false
в viewDidAppear
в SourceViewController
, однако это пахнет по многим причинам: в основном DRYness, но также при возврате к SourceViewController
происходит задержка в скрытии navigationBar
, и это видно на долю секунды ,
Как решить эту проблему?
Не могли бы вы проверить ответ на этот вопрос ?? http://stackoverflow.com/questions/845583/iphone-hide-navigation-bar-only-on-first-page –