Изменение контроллеров представления в контроллере навигации
При нажатии кнопки выхода из системы удалите VC1 из контроллера навигации и добавьте VC2
if var viewControllers = self.navigationController?.viewControllers {
viewControllers.removeLast()
viewControllers.append(VC2())
self.navigationController?.setViewControllers(viewControllers, animated: true)
}
При повторном входе в VC2
снова измените представлениеконтроллеры
self.navigationController?.setViewControllers([VC1()], animated: true)
Изменение вида контроллеров в панели вкладок контроллера
Выход из системы
if var viewControllers = self.tabBarController?.viewControllers {
let newVC = UINavigationController(rootViewController: VC2())
newVC.tabBarItem = UITabBarItem(title: "Log In", image: nil, tag: 0)
viewControllers.removeFirst()
viewControllers.insert(newVC, at: 0)
self.tabBarController?.viewControllers = viewControllers
}
Вход в систему
if var viewControllers = self.tabBarController?.viewControllers {
let newVC = UINavigationController(rootViewController: VC1())
newVC.tabBarItem = UITabBarItem(title: "Home", image: nil, tag: 0)
viewControllers.removeFirst()
viewControllers.insert(newVC, at: 0)
self.tabBarController?.viewControllers = viewControllers
}