我通过pushViewController遇到了现有UIViewcontroller
的segue问题。
当我点击resultsViewController中的位置时,我希望segue到MainVC,但我有一个错误:
pushViewController:animated:在现有转换或演示文稿发生时调用;导航堆栈不会更新。
我该如何解决这个问题,并转换到MainVC?
答案 0 :(得分:1)
夫妻俩:
确保你没有"加倍"在导航上。如果您使用 Segue 转换到其他视图控制器,请不要 致电.pushViewController()
或present()
。
了解推送与现在之间的区别。
在您的情况下,(根据您的说明和屏幕截图)显示MainVC
是您的NavController的根VC,而Segue已推送 SearchVC
导航堆栈。如果SearchVC
"从右边滑入"几乎可以肯定的是。
如果您已将推送 VC导航到导航堆栈,那么您希望使用popViewController(animated: Bool)
弹出它离开堆栈。这将"将之前的VC从左侧滑回"。
在goToVc()
功能中,您正在创建MainVC
的新实例并尝试将其推入堆栈。