Панель навигации не видна при использовании настоящего для просмотра другого контроллера - PullRequest
0 голосов
/ 24 апреля 2019

Я не могу видеть панель навигации в контроллере представления при представлении ее из другого контроллера представления

Я пытался сохранить

self.navigationController?.navigationBar.isHidden = false

, а также пытался удерживать контроллер навигации вКонтроллер вида (встроенный в).

Контроллер A: -

let storyboard = UIStoryboard(name: "Main", bundle: nil)

let viewController =     
storyboard.instantiateViewController(withIdentifier:"Identifier")  as! B        

present(viewController, animated: true, completion: nil)

Контроллер B: -

override func viewWillAppear(_ animated: Bool) {           
    super.viewWillAppear(animated)

    self.navigationController?.navigationBar.isHidden = false

} 

Ответы [ 3 ]

0 голосов
/ 24 апреля 2019

Попробуйте это

let storyboard = UIStoryboard(name: "Main", bundle: nil)

let ViewController =
storyboard.instantiateViewController(withIdentifier:"Identifier") as! B

let vc = UINavigationController(rootViewController: ViewController)

present(vc, animated: true, completion: nil)
0 голосов
/ 24 апреля 2019

В первом представлении контроллера viewWillAppear () добавьте:

override func viewWillAppear(animated: Bool) {
self.navigationController?.navigationBarHidden = true
}

Во второй добавьте:

override func viewWillAppear(animated: Bool) {

  self.navigationController?.navigationBarHidden = false

}

override func viewDidDisappear(animated: Bool) {

   self.navigationController?.navigationBarHidden = true
}

Счастливое кодирование?

0 голосов
/ 24 апреля 2019

Если вы делаете это программно, то это поможет вам: -

SWIFT 4

let vc = UIStoryboard.init(name: "Main", bundle: Bundle.main).instantiateViewController(withIdentifier: "IKDetailVC") as? IKDetailVC
self.navigationController?.pushViewController(vc!, animated: true)
...