动画替换 UINavigationController 的 viewController

Animate Replacing viewControllers for UINavigationController

我有一个允许用户在视图堆栈之间切换的菜单。我想要做的是让 UINavigationController 通过幻灯片动画从一个堆栈切换到下一个堆栈。

因此,要向当前堆栈添加一个视图,我知道我可以这样做:

self.navigationController!.pushViewController(myController, animated: true)

这会将视图滑动到堆栈上,动画。

我知道我能做到

self.navigationController!.viewControllers = newControllersStack

但这不是动画并且感觉很糟糕,因为它只是在没有任何适当流程的情况下注入堆栈流。我想做的是这个

self.navigationController!.changeViewControllers(newControllersStack, animated: true)

有办法吗?我查看了标签栏,但我必须隐藏标签(使用侧面菜单进行导航),即使这样,它也会在 UINavigationController 之间动画转换,而不是单个导航控制器内的视图。

使用UINavigationController.setViewControllers(_:animated:).