Avatar
Avatar
Kishikawa Katsumi
これはビューをはがしているだけでNavigationControllerが管理しているViewControllerのスタックがそのままなのですでに壊れてますね。 ビューをはがすのではなくてNavigationControllerが持つviewControllersプロパティを変更します。
なるほど。このような感じでしょうか? こちらも正しく動いているように見えます。 var viewControllers: [UIViewController] = [] self.navigationController?.viewControllers.forEach { if $0 is UIHostingController<HogeRootView> || $0 is HogeViewController { viewControllers.append($0) } } self.navigationController?.setViewControllers(viewControllers, animated: true)