Removendo o NavigationController programaticamente

o aplicativo contém mais de um controlador de navegação. (exemplo abaixo)

NavigationController1 ----> ViewController1 ---> TabBarController --> 
NavigationController2 ----> ViewController2

sempre que o ViewController1 desaparecer, eu removo o NavigationController usandoNavigationController.view.removeFromSuperview

o problema que estou enfrentando sempre que o ViewController2 é carregado. Acabei de ver uma tela preta e nada mais. qual pode ser o problema?

e qual é a melhor maneira de remover o navigationController?

questionAnswers(2)

yourAnswerToTheQuestion